命令行结构介绍
[root@qls~]# #超级管理员命令行提示符
[test@qls~]$ #普通用户命令行提示符
命令行结构
[] #就起到一个括号的作用
root #本身是超级管理员 所在的位置是当前登录的用户
@ #分隔符的作用
qls #主机名 是唯一的 也可以进行修改的 主机名不能有特殊字符
~ #本身是当前的家目录 所在的位置是当前所在的路径 所在的目录
# #超级管理员命令行提示符 注释 注释后面的命令,系统不会执行
$ #普通用户命令行提示符
变量 PS1 定义命令行的结构
命令结构
命令的语法:
一条完整的命令
命令 [选项] [参数]
command [options] [arguments][ARG]
[root@qls~]# ls #命令
[root@qls~]# ls -l #命令 + 选项
[root@qls~]# ls /root #命令 + 参数
[root@qls~]# ls -l /root #命令 + 选项 +参数
1.中括号中的内容是可有可无的,选项和参数不是必须的。
2.命令一条是指令的主体,必须要存在的。
3.选项是用于调节命令的某个功能
引导短格式(单个字符) 以段横杠表示"-" 例如 -l
引导长格式(多个字符)多个字符本身表示一定的含义,以长横杠表示"--" 例如"--all"
[root@qls~]# ls --l .root #命令
多个段格式组成(多个字符)每个字符都有一定的功能 以短横杠表示"-" 例如"-la"这种写法等价于"-l -a"
4.参数是命令要操作的对象 文件或者目录
5.命令、选项、参数两两之间必须要有空格
6.完整的命令、选项、参数之间不能有空格
7.命令的位置是在最前面的,是不能改变位置的。
8.选项和参数的位置是可以发生改变的。
#命令执行时的报错
command not found #命令找不到
解决:命令写错了 命令写对了,命令没有安装,需要安装命令才能使用。
No such file or directory #没有这个文件或者目录
解决:文件或者目录名字写错了 路径错误
获取命令的帮助信息
1.man ls #详细的显示一个命令的使用方法
[root@qls~]#man ls
2.help #查看一个命令的帮助信息 只能查看系统的内置命令
[root@qls~]#help cd #不推荐
3.使用选项help查看命令的帮助信息,有的命令是不支持的
[root@qls~]#ls --help #显示命令的选项帮助信息
4.info #显示命令的一些基本信息 不推荐使用
[root@qls~]#info ls
5.通过互联网的方式获取命令的帮助信息
#网站:
linux.51yip.com
https://man.linuxde.net
liunx.web3.xin
**
Bash的特性:
**
1.tab补全
#命令补全
[root@qls~]#user
useradd userdel usermod usernetctl users
[root@qls~]#s
Display all 195 possibilities? (y or n) #以s开头的命令共有195个,是否全部显示 y显示 n不显示
#选项补全
安装选项补全软件 #yum install -y bash-completion
#参数补全
文件或者目录的路径补全
[root@qls~]#ls /etc/sysconfig/network-scripts/ifcfg-eth0
2.命令行快捷键 主要通过xshell secureCRT 实现的
Ctrl+C #取消当前的操作 cancle(取消)
Ctrl+D #退出当前的登录的用户
Ctrl+l #清除屏幕上的内容 clear(清屏)
Ctrl+A #将光标移动到当前行的行首
Ctrl+E #将光标移动到当前行的行尾
Ctrl+U #将当前光标到行首的内容剪切(删除)
Ctrl+Y #粘贴当前粘贴板上的内容
Ctrl+K #将当前光标到行尾的内容进行剪切
delete #从前往后删除字符
Ctrl+R #搜索最近使用过的命令
Ctrl+S #锁屏(不要用)
Ctrl+Q #解锁
Ctrl+方向键左键 #将当前光标向左移动一组字符串,以空格为分隔符
Ctrl+W #删除当前光标向前一组字符串 以空格为分隔符
以!开头的
!! #执行上一条命令
!ls #执行最近一次以ls开头的指令
ESC+. #获取上一条指令的最后的参数或者内容
3.历史记录
[root@qls~]#history
[root@qls~]#history -d 2 #删除历史ID为2的命令
[root@qls~]#history -w #将当前的历史记录写入到默认的文件中 /root/.bash_history
[root@qls~]#history -c #清除所有历史记录
!4 #执行历史ID为4的指令
4.别名
[root@qls~]# alias #系统默认的别名
#设置别名(临时生效,退出即失效)
[root@qls~]#alias test='ping baidu.com'
#查看是否设置成功
[root@qls~]#alias
#测试别名
[root@qls~]#test
#取消别名
[root@qls~]#unalias
#让别名永久生效
把设置别名的命令写入到下面的文件中生效
[root@qls~]#ls /etc/bashrc
[root@qls~]#echo "alias network='cat /etc/sysconfig/network-scripts/ifcfg-eth0'" >>/etc/bashrc
[root@qls~]#source /etc/bashrc #重新加载文件配置,使其生效。
[root@qls~]#ls ~/.bashrc
#临时取消
\ #取消特殊字符的特殊含义 取消转义
[root@qls~]# \network (\)取消特殊含义