ls: 查看文件夹下文件和文件夹列表
ls -lah
-l: 列表形式显示
-a: 查看所有目录,包括隐藏目录
-h: 以易读的方式显示文件大小
-s: 显示文件占用的data block空间大小
-S: 按文件大小降序排列
-t: 按文件m/a/ctime降序排列
-r: 逆序排列
-R: 递归遍历
cp: 复制文件或目录
cp -ai ~/test ~/Downloads/
-a: 相当与 -pdr,重要参数
-p: 连同文件属性一起复制过去(备份时常用)
-d: 如果源文件为链接文件的属性,则复制后的文件为链接文件,而不是真实文件本身
-r: 递归的复制所有文件
-i: 当遇到已存在文件时,询问用户
top: 查看系统进程资源占用情况
top -d 2 -p 1234 : 将资源使用情况更新时间设为2秒,查看的进程为pid 1234
top中的PRI和NI是进程的优先级,其中Priority(new)=Priority(Old)+Nice,
PRI越小表示进程优先级越高,用户仅可以调整NI值,所以将NI调整为负值可以提高进程优先级,
NI的调整范围是 -20~19
在top程序界面内快捷键
shift + p : 按cpu使用率排序
shift + M : 按内存使用率排序
r : 调整process的NICE值
q : 退出top
使用 nice 和 renice 命令调整进程优先级
nice -n 10 vim & : 运行一个vim,并将他的nice值设置为10
renice -10 1234 : 将pid为1234的进程的nice值调整为-10
ps: 显示详细进程信息
常用格式: ps aux
a 显示所有用户进程,包括其他用户
u 以用户为主的格式显示进程状况
x 显示不受终端控制的进程
ps -l : 以特定格式现实当前用户shell进程
ps axjf : 以工作格式现实所有用户进程的树状图
mv: 移动或重命名文件或文件夹
常用格式: mv -f test1/ test2/
-f 强制模式,在移动前不询问
test1/ 待移动文件夹
test2/ 移动到的目标文件夹
常用格式: mv file1 file2 dir1/
将file1 file2 移动到 dir1
find: 查找文件或文件夹
常用格式: find / -type f -iname '*test'
/ 查找的目录,此处为更根目录
-type f,d,l 类型:普通文件,目录,链接文件
-iname 查找文件名,并忽略大小写
'*test' 要查找的文件名,此处是以test结尾的文件名
-mtime n/+n/-n : 指定最后修改时间在 n天前24小时内 /
(n+1)天前无限小时 / n天至今 的文件 find ~/ -mtime +4
查找5天前的文件
-newer file: 查找mtime比 file 新的文件 find ~/
-newer test
df: 查看磁盘使用情况
常用格式: df -aTh
-a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统
-T 显示磁盘类型,如ext4
-h 根据目前磁盘空间和使用情况 以更易读的方式显示
cat: 显示文件内容,或合并两个文件
常用格式: cat myfile
常用格式: cat -n myfile1 > myfile2
-n 对myfile1数据加上行号
myfile1 需要复制数据的文件
myfile2 复制数据的目标文件,会将myfile2的原数据清空
常用格式: cat -n myfile1 myfile2 > myfile3
myfile1 myfile2 需要合并的文件
myfile3 合并后保存的文件
chmod: 改变文件或文件夹的权限
常用格式: chmod 664 myfile
664 文件权限码,此处为默认新建文件权限,rw-rw-r--
chmod u=rwx g=rwx o=rwx myfile
将myfile的权限改为用户为rwx,用户组为rwx,其他用户为rwx
chgrp: 改变文件或文件夹所属用户组
常用格式: chgrp root myfile
root 修改到的目标用户组
myfile 需要修改的文件名
chown: 改变文件或文件夹所有者
常用格式: chown -R lewis.mygroup filename
-R: 当前目录下的所有文件和文件夹
lewis.mygroup: 将所有者改为mygroup用户组的lewis用户
filename: 需要修改所有者的文件或文件夹名称
grep: 字符串查找,常用于其他命令的结果中的查找
常用格式: ls -l | grep myfile
myfile 需要查找的字符串
ls -l | grep -vi 'test'
查找除了test或TEST之外的内容
wc: 统计文件中的单词书,字节数,行数
常用格式: wc -wml myfile
-w 文件中的单词数
-m 文件中的字符数
-c 文件的字节数
-l 文件的行数
tar: 解压或压缩文件
常用格式: tar -zcv -f ~/Downloads/downloads.tar.gz ~/Downloads
将Downloads的文件压缩到一个叫downloads.tar.gz的文件
-z 使用gzip解压或压缩
-c 建立压缩文件
-v 显示执行过程
-f 需要操作的文件
tar -zvcp -f backup.tar.gz --exclude=/etc5 * * * * command很简单吧!用
* 与 /5 来搭配,也可以写成 0-59/5 ,相同意思!
如果是要编辑系统的计划任务,而不是针对用户的计划任务,可以使用/etc/crontab文件,编辑他
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
注意这个文件和crontab命令的区别,他多了一个user栏位,这里用来标注命令的运行者,其他地方和使用crontab命令一样
nohup : 无终止运行命令
使用nohup运行命令可以使命令在session断开后继续运行,比如用ssh登录的时候
nohup ./test.sh &
这样test.sh在退出ssh登录后依然运行
pstree : 以树状形式现实进程关系
pstree -Aup
A : 程序间用ascii字节连接
u : 显示进程所属用户id
p : 现实进程pid
dmesg : 显示开机时内核检测的硬件信息
fuser : 通过文件显示使用该文件的用户
fuser -uv sh01.sh
u : 除了显示pid,也显示pid对应的用户名
v : 现实详细的文件相关信息, ACCESS 和 COMMAND
ACCESS有以下几种
c :此程序在当前的目录下(非次目录);
e :可被触发为运行状态;
f :是一个被开启的文件;
r :代表顶层目录 (root directory);
F :该文件被开启了,不过在等待回应中;
m :可能为分享的动态函式库;
COMMAND 是使用该文件的命令
modprobe : 模块管理命令
modprobe vfat : 加载vfat模块
modprobe -r vfat : 删除vfat模块
modprobe -l : 列出所有可用模块
lsmod : 列出已加载模块
modinfo : 查看模块详情
modinfo vfat
man hier : Description of the file system
hierarchy
cat /etc/issue : 查看linux的发行版本
rsync : 将当前主机数据同步到远程服务器
rsync -avzP bkuser@192.168.10.1:/bk/remotebackup
/localbackup
将当前主机的/localbackup文件夹备份到远程主机的/bk/remotebackup
-a
参数,相当于-rlptgoD,-r 是递归 -l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t
保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;
-z
传输时压缩;
-P
传输进度;
-v
传输时的进度等信息,和-P有点关系,自己试试。可以看文档;
apt-get update :
跟新软件列表
apt-get upgrade :
更新现有软件
apt-get
dist-upgrade : 更新disribution
sar -n DEV 1 100
查看网络流量, 每1秒输出一次, 输出100次, 输出内容
sar 还可以监控cpu -u, 内存 -r 具体看man
mac
lsof -i -P: 可以用来查看端口
-i: 只显示网络地址
-P: 让端口号不会转化成端口名