1. Linux命令行提示符介绍
Linux命令行的提示符有“#”和“$”两种不同的符号,如下所示:
[root@zabbix-server ~]# #<===这是超级管理员root对应的命令行
[www@zabbix-server ~]$ #<===这是普通用户www对应的命令行
2. 命令提示符拆解介绍
如:[root@zabbix-server ~]#
root:当前登录的用户
@:分隔符,用来分隔用户和主机名
zabbix-server:主机名
~:当前目录,当前所在位置
3. Linux命令提示符相关变量
Linux命令提示符由PS1环境变量控制,如下所示:
[root@zabbix-server ~]# set | grep PS1
PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\] \[\e[31;1m\]\w\[\e[0m\]]\$ '
这里的PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\] \[\e[31;1m\]\w\[\e[0m\]]\$ ',可以通过全局配置文件/etc/bashrc或/etc/profile按需进行配置和调整。
3. Linux命令行常用快捷键
快捷键 | 功能说明 |
---|---|
最有用的快捷键 | |
tab | 命令或路径的补全键 |
移动光标快捷键 | |
Ctrl+a | 光标回到命令行首 |
Ctrl+e | 光标回到命令行尾 |
Ctrl+f | 光标向右移动一个字符(相当于方向键右键) |
Ctrl+b | 光标向左移动一个字符(相当于方向键左键) |
剪切、粘贴、清除快捷键 | |
Ctrl+Insert | 复制命令行内容 |
Shift+Insert | 粘贴命令行内容 |
Ctrl+k | 剪切(删除)光标处到行尾的字符 |
Ctrl+u | 剪切(删除)光标处到行首的字符 |
Ctrl+w | 剪切(删除)光标前的一个单词 |
Ctrl+y | 粘贴Ctrl+u、Ctrl+k、Ctrl+w删除的文本 |
Ctrl+c | 中断正在执行的任务或者删除整行 |
Ctrl+h | 删除光标所在处的前一个字符(相当于退格键) |
重复执行命令快捷键 | |
Ctrl+d | 退出当前Shell命令行 |
Ctrl+r | 搜索命令行使用过的历史命令记录 |
Ctrl+g | 从执行Ctrl+r的搜索历史命令模式退出 |
Esc+.(点) | 获取上一条命令的最后部分(空格分隔) |
控制快捷键 | |
Ctrl+l | 清除屏幕所有内容,并在屏幕最上面开始一个新的命令行(相当于clear) |
Ctrl+s | 锁定终端,使之无法输入内容 |
Ctrl+q | 解锁执行Ctrl+s的锁定状态 |
Ctrl+z | 暂停执行在终端运行的任务 |
!号开头的快捷键 | |
!! | 执行上一条命令 |
!pw | 执行最近以pw开头的命令 |
!pw:p | 仅打印最近pw开头的命令,但不执行 |
!num | 执行历史命令列表的第num(数字)条命令 |
!$ | 上一条命令的最后一个参数,相当于Esc+. |
扩展:命令后台运行相关知识
如上面Ctrl+z,暂停正在执行的命令
重新运行可以使用bg,调出后台运行的命令可以使用jobs。
实例:
[root@zabbix-server ~]# sleep 100 #延迟一段指定的时间
^Z #Ctrl+z暂停运行
[1]+ Stopped sleep 100
[1]+ #暂停任务的编号
Stopped # 当前状态
sleep 100 #被暂停的具体命令
使用bg+编号重新运行,并使用jobs查看正在后台运行的命令
[root@zabbix-server ~]# bg 1
[1]+ sleep 100 &
[root@zabbix-server ~]# jobs #后台运行结束后,就看不到了
[1]+ Done sleep 100
如果想把后台运行的命令调回前台运行,可以使用fg+编号,如下:
[root@zabbix-server ~]# fg 1
sleep 100
&,可以让命令后台执行,但最好在&的前面空格加上&>/tmp/txt.txt,防止输出显示在屏幕上,如下:
echo 'aaa' &>/tmp/txt &
nohup
如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。 该命令的一般形式为:
nohup conmmand &
如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:
nohup command > myout.file 2>&1
在上面的例子中,输出被重定向到myout.file文件中。
4. 命令行帮助
(1)man
查看普通命令的详细介绍,参数,使用
示例如下:
man 命令
(2)--help
查看内置命令的详细介绍,参数,使用
示例如下:
命令 --help
普通命令和内置命令的区别
普通命令是在系统中存在的文件。
内置命令在系统中,不存在文件,而是存在于bash解释器。
可以使用“which 命令”来查询命令的路径,如果没有,那么就是内置命令。