文章目录
- 1. Linux命令行介绍
- 1.1 命令行提示符
- 1.2 命令行操作
- 2. 查看命令帮助
- 2.1 man命令
- 2.2 help命令和--help参数
- 3. 关机重启注销命令
- 3.1 重启或关机:shutdown
- 3.2 关机与重启:其他
- 3.3 注销命令:logout/exit
1. Linux命令行介绍
日常工作中,最常用的就是服务器的命令行模式进行管理服务。这里对命令行进行简单的介绍。
1.1 命令行提示符
Linux命令行结尾的提示符有“#
”和“$
”两种不同的符号,示例代码如下所示:
[root@localhost ~]# # <==这是超级管理员root用户对应的命令行。
[test@localhost ~]$ # <==这是普通用户oldboy对应的命令行。
root | @ | localhost | ~ | # |
---|---|---|---|---|
当前用户名 | 分隔符 | 主机名 | 当前位置 | 提示符 |
【命令行提示符解析】
#
是root用户登录后的命令行提示符,$
是普通用户的提示符;
@ 提示符之前
表示当前登录用户
@提示符之后
表示主机名
~
所在位置表示窗口当前用户所在的路径
【控制命令行提示符的环境变量
PS1
】
- 查看
PS1
,PS1
一定是大写[root@localhost ~]# echo $PS1 [\u@\h \W]\$[root@localhost ~]# set | grep PS1 PS1='[\u@\h \W]\$ '
- 修改
PS1
[root@localhost ~]# PS1='[\u@\h \W \t]\$ ' [root@localhost ~ 09:22:24]# # 永久修改PS1,需要在配置文件中进行调整 # 1.使用vi编辑/etc/profile文件。 # 2.在最后加上:export PS1='[\u@\h \W \t]\$ # 3.然后保存退出,执行source /etc/profile重新加载。# 举例: [root@localhost ~]# echo "PS1='\[\e[32;1m\][\u@\h \W]\\$ \[\e[0m\]'" >>/etc/profile # 《==亮绿色 [root@localhost ~]# source /etc/profile
- 这部分并不重要,所以只需要了解即可。
1.2 命令行操作
- 命令结构:
命令的结构一般是由三部分组成:命令、选项、参数。根据命令的特殊功能还会有其他部分,不再进行说明。
命令结构 | 说明 |
---|---|
命令 | 指令单位。Linux环境下通过命令控制整个系统。(一般是单词或缩写) |
选项 | 控制条件。同一个命令结合不同的选项实现不同的功能。 |
参数 | 控制条件。可以看作是命令处理的目标,比如文件、目录等。 |
一般就把选项和参数统称为参数即可。不是所有的常用的命令都需要加上参数、选项。
# 1. 【命令】,直接回车。例如: ls pwd reboot# 2. 【命令 参数】,回车。例如: cat /etc/sysconfig/network-scripts/ifcfg-eth0 vi /etc/sysconfig/network-scripts/ifcfg-eth0# 3. 【命令 选项 参数】,回车。例如: ls -l /etc/sysconfig/network-scripts/ rm -f test.txt
- 常用快捷键
快捷键 | 功能说明 |
---|---|
Tab | 命令或路径的补全键,是最常用的快捷键。 查找命令时,连续两次会显示出所有符合条件的命令 |
Ctrl + A、【Home】 | 光标回到命令行首 |
Ctrl + E、【End】 | 光标回到命令行尾 |
Ctrl + Insert | 复制命令行内容 |
Shift + Insert | 粘贴命令行内容 |
Ctrl + K | 剪切(删除)光标处到行尾的字符 |
Ctrl + U | 剪切(删除)光标处到行首的字符 |
Ctrl + Y | 粘贴Ctrl + U ,Ctrl + K 的文本 |
Ctrl + C | 中断终端正在执行的任务或者删除整行 |
Ctrl + D | 退出当前的shell命令行,也可以关闭Xshell |
Ctrl + R | 搜索命令行使用过的历史命令记录,使用快捷键 Ctrl + G 退出。 |
Ctrl + L | 清除屏幕上的所有内容,在最上方新开始一行,等同于clear命令。 |
Ctrl + Z | 暂停执行在终端运行的任务 |
!pw | 执行最近以"pw"开头的命令 |
!! | 执行上一条命令 |
!num | 执行历史命令列表中的第num 条命令 |
Esc + .(点) | 获取上一条命令的最后一部分,以空格为分界线 |
注意:上述快捷键适合于
SecureCRT
和Xshell
客户端。
2. 查看命令帮助
遇到不会命令或者用法不确定的命令,我们可以通过多种方式查询他们的使用方法。
查询帮助方式 | 说明 |
---|---|
上网百度命令帮助 | 通过网络上的网站或者上传的文档了解命令使用方法。效率高 |
man | manual的缩写,用来查看系统中自带的各种参考手册 |
–help | 通过命令后携带参数 help 的方式来展示所查询命令的帮助文档 |
info帮助 | 比man更详细易懂,但是上手难,不常用 |
help | 通过执行内建的 help 命令查看帮助文档 |
【补充】
内部命令: shell 程序的一部分,Linux 系统加载运行时就被加载并驻留在系统内存里的,执行速度较快;
外部命令: 通过额外安装获得的命令,不随系统一起被加载到内容中,运行速度慢但功能强大。
2.1 man命令
man命令是Linux系统中最核心的命令之一,因为通过该命令,可以查看其他Linux命令的使用信息。man命令不仅可以查看命令(外部命令)的使用帮助,还可以查看软件服务配置文件、系统调用、库函数等的帮助信息。
- 语法格式:
man [选项] 命令/文件 # 但是在使用过程中极少使用参数,而是直接加命令
- man命令的常用选项及说明
-f
:显示与指定关键字相关的手册页面。-k
:搜索手册页中与关键字匹配的条目。-a
:显示所有匹配的手册页面。-w
:仅显示手册页的位置,而不显示其内容。
- man命令章节号
man将命令进行分类,将各个属性的命令分到自己的章节中。在查询命令帮助的时候,通过章节号来表示分类。下表对分类进行简单说明。
数 字 | 说 明 | 简 解 |
---|---|---|
1 | Executable programs or shell commands | 可执行程序或shell命令 |
2 | System calls (functions provided by the kernel) | 系统调用(内核提供的函数) |
3 | Library calls (functions within program libraries) | 库调用(程序库中的函数) |
4 | Special files (usually found in /dev) | 特殊文件(通常在/dev中找到) |
5 | File formats and conventions eg /etc/passwd | 文件格式和约定,例如/etc/passwd |
6 | Games | 游戏 |
7 | Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) | 杂项(包括宏包和约定) |
8 | System administration commands (usually only for root) | 系统管理命令(通常仅适用于root) |
9 | Kernel routines [Non standard] | 内核例程[非标准] |
- 操作举例
# 直接查看命令的手册页面,以ls举例
man ls# 查看指定章节的命令的手册页面,以sudo为例
man 8 sudo
# 如果指定错章节的话,会提示报错
man 1 sudo # No manual entry for sudo in section 1# 要搜索包含特定关键字的手册页面条目,可以使用 -k 选项:
man -k keyword
一般常见的用法还是直接使用man命令,
不带参数
。
- 内容主要标题解释
man帮助信息中标题 | 功能说明 |
---|---|
NAME | 命令说明及介绍(常见)* |
SYNOPSIS | 命令的基本使用语法(常见)* |
DESCRIPTION | 详细描述命令,以及相关参数选项说明(常见)* 有的命令会单独使用参数选项,例如,把“COMMAND LINE OPTIONS或OPTIONS分开介绍” |
OPTIONS | 命令相关参数选项说明(有的命令帮助没有此项)* |
COMMANDS | 执行这个程序(软件)的时候,可以在此程序(软件)中执行的命令(不常见) |
FILES | 程序涉及(或使用或关联)的相关文件(不常见) |
EXAMPLES | 命令的一些例子、这块有时很有用*(不常见) |
SEE ALSO | 与命令相关的信息说明 |
BUGS(REPORTING BUGS) | 命令所对应的缺陷问题描述 |
COPYRIGHT | 版权信息相关声明 |
AUTHOR | 作者介绍 |
- 执行“man命令”进入到man帮助页面中,实际上就相当于是浏览一个文本文件,可以利用下表中的快捷键快速浏览查阅想要查找的内容。
操作键 | 功能说明 |
---|---|
【Page Down】 | 向下翻一页(可以用空格键替代) |
【Page Up】 | 向上翻一页 |
【Home】 | 跳转到首页(Xshell 5 中不好用) |
【End】 | 跳转到尾页(Xshell 5 中不好用) |
/字符串 | 向下依次查找字符串内容 |
?字符串 | 向上依次查找字符串内容 |
【q】 | 结束man帮助 |
注意事项:
如果想要看到中文的man帮助手册,这种情况可以将系统调整为中文的字符集或单独安装man的中文包,不过遗憾的是,man的中文手册内容“年久失修”,与英文手册相去甚远。
2.2 help命令和–help参数
help命令 的使用方法与man命令类似,但是所查询的命令范围与man命令不一样,主要用于查询内部命令的帮助。
–help 获取的是基础常用的帮助信息,而且可以通过调整字符集系统来显示中文(部分显示中文),是man的精简版本。
- 语法格式:
help 命令命令 --help
- 调整字符集系统来显示中文(部分中文)
[root@localhost ~]# echo $LANG
en_US.UTF-8
[root@localhost ~]# LANG='zh_CN.UTF-8'
[root@localhost ~]# echo $LANG
zh_CN.UTF-8[root@localhost ~]# ls --help
用法:ls [选项]... [文件]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.Mandatory arguments to long options are mandatory for short options too.-a, --all 不隐藏任何以. 开始的项目-A, --almost-all 列出除. 及.. 以外的任何项目--author 与-l 同时使用时列出每个文件的作者-b, --escape 以八进制溢出序列表示不可打印的字符--block-size=SIZE scale sizes by SIZE before printing them; e.g.,'--block-size=M' prints sizes in units of1,048,576 bytes; see SIZE format below
是使用“man命令”还是“–help命令”呢?
建议结合使用,“–help命令”获取的是基础常用的帮助信息,“man命令”获取的是更多更复杂的帮助信息。
日常使用顺序:使用顺序建议先用man命令,找不到再使用help命令。
3. 关机重启注销命令
3.1 重启或关机:shutdown
shutdown
是一个用来安全关机和重启Linux系统的命令,在系统关闭之前会通知所有登录的用户,系统即将关闭,期间新用户也无法登录。
- 语法格式:
shutdown [OPTION]... TIME [MESSAGE]
shutdown [选项] 时间 消息
-
技巧说明:
- 注意shutdown命令与后面的选项之间至少要有一个空格。
- 通常情况下,我们执行的shutdown命令为
shutdown-h now
或shutdown-r now
。
-
shutdown命令的参数选项及说明
参数选项 | 解释说明 |
---|---|
-r | 重启系统,而不是关机,这个参数在系统重启时经常使用,例如,shutdown -r now |
-h | 关机,这个参数在系统关机时经常使用,例如,shutdown -h now |
-H | 关机(halt),经过测试,使用这个参数对系统进行关机后,系统其实并未完全关机,需要手动切断电源,不常用 |
-P | 关机 (poweroff),不常用 |
-c | 取消正在执行的shutdown指令,不常用 |
-k | 只发送关机警告信息并拒绝新用户登录,但是并不实际关机,不常用 |
-
shutdown命令常用方式
shutdown -r now # 立刻重启 shutdown -h now # 立刻关机 shutdown -r +5 # 设置5分钟之后重启系统,关机同样。但在未关机之前可以Ctrl+C 取消命令 shutdown -h 11:00 # 设置11:00关机
3.2 关机与重启:其他
除了shutdown
之外,还可以使用reboot
、init 6
执行重启,halt
、poweroff
、init 0
执行关机。
工作中最常用的重启命令是reboot
,常用关机命令是halt
。
halt、poweroff、reboot这三个命令对应的是同一个man帮助文档,
而halt、poweroff、shutdown、reboot命令都是systemctl命令的链接文件(CentOS7)
[root@localhost ~]# ls -l `which reboot` `which poweroff` `which halt` `which shutdown` lrwxrwxrwx. 1 root root 16 Jan 29 23:20 /usr/sbin/halt -> ../bin/systemctl lrwxrwxrwx. 1 root root 16 Jan 29 23:20 /usr/sbin/poweroff -> ../bin/systemctl lrwxrwxrwx. 1 root root 16 Jan 29 23:20 /usr/sbin/reboot -> ../bin/systemctl lrwxrwxrwx. 1 root root 16 Jan 29 23:20 /usr/sbin/shutdown -> ../bin/systemctl [root@localhost ~]# which systemctl /usr/bin/systemctl
在CentOS7中,将以上四个命令整合成一个命令systemctl,使用时 systemctl + 那四个命令
。
CentOS 7 系统中systemctl 命令 | 功能 |
---|---|
systemctl reboot | 重启系统 |
systemctl poweroff | 关闭系统,并且切断电源 |
systemctl halt | 关闭系统,并且CPU停止工作 |
systemctl suspend | 暂停系统 |
systemctl hibernate | 让系统进入冬眠状态 |
systemctl hybrid-sleep | 让系统进入交互式休眠状态 |
systemctl rescue | 启动进入救援状态(单用户状态) |
当然,在命令行中使用reboot、poweroff、halt命令依然有效。
3.3 注销命令:logout/exit
可以注销退出当前命令的窗口,可以使用 logout、exit 命令或快捷键 Ctrl + D
实现。