linux / 2023.09.23

Linux 常用命令 の Note

记录常用命令及对应的常用 option,方便查。

记录常用命令及对应的常用 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

显示网卡参数 - ifconfig

查看网络系统状态信息 - netstat