Linux 命令
终端命令格式
command [-options] [parameter]
说明:
- command:命令名,相应功能的英文单词或单词的缩写
- [-options]:选项,可用来对命令进行控制,也可以省略
- parameter:传给命令的参数,可以是 零个、一个 或者 多个
- [] 代表可选
终端命令帮助
help
help [-dms] [pattern ...]
hann@HannYang:~$ help --help help: help [-dms] [pattern ...] Display information about builtin commands. Displays brief summaries of builtin commands. If PATTERN is specified, gives detailed help on all commands matching PATTERN, otherwise the list of help topics is printed. Options: -d output short description for each topic -m display usage in pseudo-manpage format -s output only a short usage synopsis for each topic matching PATTERN Arguments: PATTERN Pattern specifying a help topic Exit Status: Returns success unless PATTERN is not found or an invalid option is given.
无选项的help命令列出所有命令:
用法: help 命令名
help command
或者用 命令名 --help
即这是多数命令都有的选项,显示所指定命令command的帮助信息。
command --help
示例:命令more的使用帮助
hann@HannYang:~$ more --help Usage: more [options] <file>... A file perusal filter for CRT viewing. Options: -d display help instead of ringing bell -f count logical rather than screen lines -l suppress pause after form feed -c do not scroll, display text and clean line ends -p do not scroll, clean screen and display text -s squeeze multiple blank lines into one -u suppress underlining -<number> the number of lines per screenful +<number> display file beginning from line number +/<string> display file beginning from search string match --help display this help -V, --version display version For more details see more(1).
man
查阅 command 命令的使用手册
man command
man 是 manual 的缩写,包含了绝大部分的命令、函数的详细使用说明手册。
使用 man 时的操作键:
- 空格键: 显示手册页的下一屏
- Enter 键: 一次滚动手册页的一行
- b: 回滚一屏
- q: 退出
示例:
hann@HannYang:~$ man more
两者的区别
help 提供命令的简单操作说明;
man 提供命令的详细操作手册;
大多数命令都会有帮助,有些命令就没有操作手册:
hann@HannYang:~$ man ll No manual entry for ll hann@HannYang:~$ man shift No manual entry for shift
重定向与管道
重定向 >、>>
Linux 命令执行结果默认是显示在终端上的,通过 重定向 可以把命令执行结果 输出/追加 到指定文件或其它设备。
重定向符:
> :表示输出,会覆盖文件原有的内容;
>> :表示追加,会将内容追加到已有文件的末尾。
管道 |
Linux 允许将 一个命令的输出,可以通过 管道 作为另一个命令的输入。
管道符: | 竖线,左边的命令为输出端,右端的命令读取内容,为输入端。
hann@HannYang:~$ ls -al | more
关于两者的具体用法,在后面的命令中碰到再讲。
终端命令分类
主要分文件操作、磁盘操作、网络操作、用户管理、系统配置、程序管理和编程控制等七大类。
文件操作类
ls:用来列出当前目录所包含的文件和目录;
cd:用于改变当前的工作目录;
pwd:显示当前的工作目录;
mv:用于移动或重命名指定的文件或目录;
cp:用于复制指定的文件或目录;
rm:用于删除指定的文件或目录;
mkdir:用于创建空目录;
cat:用于显示文件内容;
touch:用于更新文件或目录的时间戳;
vi:文本文件内容编辑;
chmod:用于改变文件或目录的访问权限;
磁盘操作类
df:显示磁盘占用情况;
du:显示每个文件占用空间大小;
tree:显示目录的树状结构;
mount/umout:挂载/卸载磁盘;
网络操作类
ifconfig命令:用于查看网络接口、地址、状态等信息;
ping命令:用于测试网络连通性与延迟;
netstat命令:用于查看网络状态;
wget命令:用于从远程服务器下载文件;
用户管理类
useradd:用于添加用户;
chown:用于更改文件属主;
passwd:用于更改用户密码;
usermod:用于修改用户名或所属组;
groupadd:用于创建新用户组;
groupmod:用于修改组名称;
系统配置类
alias/unalias:用于给其它命令设置和删除别名;
history:命令的使用历史记录;
date:修改或显示系统日期;
time:修改或显示系统时间;
set:设置系统环境变量;
crontab:设置定时任务;
reboot:重启系统;
shutdown:关机;
程序管理类
ps:显示进程状态;
bg:将后台进程改为前台运行;
fg:将前台进程改为后台运行;
top/htop:用于实时监控系统资源;
kill:用于终止程序运行;
编程控制类
for, while, if, test, return... 等编程控制类命令,以及两个bool变量:true, false
各种发行版本可能有细微差别,我用的版本是wsl2之Ubuntu 20.04.6。