记录常用命令及对应的常用 option,方便查。
切换用户当前工作目录 - cd
全称为 change directory
1### example:
2## 绝对路径
3cd /usr/bin
4
5## 相对路径
6cd ./foo/bar/dir
打印当前工作目录 - pwd
全称为 print working directory
新建目录 - mkdir
全称为 make directory
1mkdir [-mp] dirname
2## -m: 指定目录权限
3## -p: 若父级目录不存在,则一并新建
删除空目录 - rmdir
全称为 remove directory
1rmdir [p] dirname
2## -p: 若父级目录为空,则一并删除
显示目录内容列表 - ls
全称为 list
1ls [-al] [path]
2## -a: 列出所有文件,包括以 '.' 开头的隐藏文件
3## -l: 列出详细信息,包括文件属性、修改日期等
4
5## path: 若为目录,啧列出指定目录下内容;反之,打印 path
拷贝文件或目录 - cp
全称为 copy
1cp [-filprs] src dst
2## -f: 强制执行
3## -i: 询问是否拷贝
4## -l: 改为建立 hard link
5## -p: 保留原权限,而非使用默认权限
6## -r: 递归拷贝
7## -s: 改为建立 soft link
拷贝得到的新文件/目录,其 user:group 为命令执行者
移动文件或目录 - mv
全称为 move
1mv [-fi] src dst
2## -f: 强制执行
3## -i: 询问是否移动
删除文件或目录 - rm
全称为 remove
1rm [-fir] 文件或目录
2## -f: 强制删除
3## -i: 询问是否删除
4## -r: 递归删除
修改文件拥有者 - chown
全称为 change owner
1chown [-R] username[:groupname] dirname/filename
2## -R/--recursive: 递归处理
3## 若附带 :groupname 则会将所属群组一并修改
修改文件所属群组 - chgrp
全称为 change group
1chgrp [-R] dirname/filename ...
2## -R/--recursive: 递归处理
修改文件权限 - chmod
全称为 change group
1### 数字类型
2chmod [-R] xyz 文件或目录
3## -R: 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更
4## xyz: 数字类型的权限属性,为 rwx 属性数值的相加。
5
6### 符号类型
7chmod [-R] [ugoa][+-=][rwx] 文件或目录
8## u: user +: 加上 r: 可读
9## g: group -: 减去 w: 可写
10## o: other =: 赋予 x: 可执行
11## a: all
连接多个文件并打印到标准输出 - cat
全称为 concatenate
1cat [-ns] file1 file2 ...
2## -n: 显示行号,等同于 nl
3## -s: 压缩连续的空行为一行
翻页显示文件内容 - more/less
打包、压缩与解压缩 - tar
1tar [-j|-z] [-cv] [-f dst] filename... ## 将 filename 打包为 dst
2tar [-j|-z] [-tv] [-f src] ## 查看档名
3tar [-j|-z] [-xv] [-f src] [-C dir] ## 解压缩 src 至指定目录
4## -j: 以 bzip2 方式压缩/解压,后缀最好为 tar.bz2
5## -z: 以 gzip 方式压缩/解压,后缀最好为 tar.gz
6
7## -c: 创建压缩文件
8## -t: 查看压缩文件内容
9## -x: 解压
10
11## -C: 解压文件存放的位置,不加就放到当前目录
-c, -t, -x 三者不共存
查看磁盘使用情况 - df
全称为 disk free
显示文件或目录占用磁盘空间大小 - du
全称为 disk usage
1du [-schbkm] /path/to/dir/or/file
2## -s: 仅显示占用量之和
3## -c: 不仅显示单个占用量,也显示总和
4## -h: 以 K, M, G 为单位,提高可读性
5## -b: 以 Byte 为单位
6## -k: 以 KB 为单位
7## -m: 以 MB 为单位
查看内存使用情况 - free
1free [-thbkmg]
2## -t: 显示总和
3## -h: 以 K, M, G 为单位,提高可读性
4## -b: 以 Byte 为单位
5## -k: 以 KB 为单位
6## -m: 以 MB 为单位
7## -g: 以 GB 为单位
实时显示内存使用情况 - top
查看当前进程状态 - ps
全称为 process status
通常搭配 aux 选项,意思是查看当前所有终端(x)上所有用户(a)的进程状态,并输出用户标识符列(u)。
杀掉进程 - kill
它发送信号给指定的进程,让进程执行相应的操作。
1kill [-ls] <PID>
2## -l 列出可用的信号列表,常用的有:
3## 1 (SIGHUP):挂起信号,通常用于重新加载配置文件。
4## 2 (SIGINT):中断信号,通常由 Ctrl+C 发送,用于终止进程。
5## 9 (SIGKILL):强制终止信号,立即终止进程,不允许进程做清理工作。
6## 15 (SIGTERM):终止信号,通常用于优雅地终止进程。
7## -s <SIGNAL>: 指定要发送的信号名,默认为 15