个人学习笔记,如有错误,欢迎大家指出!

一.管道通配符

命令符的作用:把一个命令原本要输出到屏幕的数据当作是后一个命令的标准输入

格式:命令A | 命令B

例子:

Cat test.txt | bc

这个命令是将cat读取出的2+8这个数值,然后再把这个数值交给bc计算命令进行计算

root@167227159:~# cat test.txt
2+8
root@167227159:~# cat test.txt | bc
10

**注:**管道命令符可以在一个命令组合中使用多次,如:命令1 | 命令2 | 命令3


二.批量查看文件属性

指令:ls -l

**结果:**会返回所有的属性,文件少还好,多的话看不起,效率很低。

root@167227159:~# ls -l
total 648
drwxr-xr-x 2 root root    4096 Nov  7 22:22 hd.txt
-rw-r--r-- 1 root root   34965 Jun 20 15:06 install.sh
drwxr-xr-x 3 root root    4096 Oct 26 22:52 psweb
drwxr-xr-x 8  501 staff   4096 Jul 14 07:46 pure-ftpd-1.0.49
-rw-r--r-- 1 root root  610239 May  6  2019 pure-ftpd-1.0.49.tar.gz
-rw-r--r-- 1 root root       4 Nov  9 12:36 test.txt

三.命令行的通配符(模糊文件名)

作用:就是用来在找文件时,只记得一个文件的开头几个字母时,用来替代一些模糊内容的。

**通配符:**就是通用的匹配信息的符号

常见通配符:

  • 星号*:代表匹配零个或多个字符(最常见)
  • 问号?:代表匹配单个字符
  • 中括号内加上数字[0-9]:代表匹配0~9之间的单个数字的字符
  • 中括号内加上字母[abc]:代表匹配a、b、c三个字符中的任意一个字符

例如:

例1:下面新建三个hello文件,但后缀不同。这时就可以用通配符*替代后缀,用于搜索文件。

root@1672271595188:~# touch hello.txt
root@1672271595188:~# touch hello.yaml
root@1672271595188:~# touch hello.zip
root@1672271595188:~# ls
hd.txt     hello.yaml  install.sh  pure-ftpd-1.0.49         test.txt
hello.txt  hello.zip   psweb       pure-ftpd-1.0.49.tar.gz
root@1672271595188:~# find hello.*
hello.txt
hello.yaml
hello.zip

例2:

root@1672271595188:~/test# find h[abc]
ha
hb
hc

四.转义字符

常用的转义字符

  • 反斜杠(\):使反斜杠后面的一个变量变为单纯的字符串

  • 单引号(''):转义其中所有的变量为单纯的字符串

  • 双引号(""):保留其中的变量属性,不进行转义处理

  • 反引号(``):把其中的命令执行后返回结果。

例如:

注:变量提取符号$ $$作用是显示当前程序的进程ID号码

希望能够输出“Price is $5”,但碰巧由于美元符号和变量提取符号组合成$$,显示进程

[root@linuxprobe ~]# echo "Price is $$PRICE"
Price is 3767PRICE

这时就可以用反斜杠将后面的(最靠近的一个)转成普通的字符串

[root@linuxprobe ~]# echo "Price is \$$PRICE"
Price is $5

五.环境变量

变量:是计算机系统用于保存可变值的数据类型。

  • 变量名称一般都是大写的

命令的执行顺序

**第一步:**判断用户是否以绝对路径或相对路径的方式输入命令(如/bin/ls),如果是的话则直接执行。

**第二步:**Linux系统检查用户输入的命令是否为“别名命令”

**第三步:**Bash解释器判断用户输入的是内部命令还是外部命令。

  • 内部命令是解释器内部的指令,会被直接执行
  • 外部命令将交由第四步执行

**第四步:**系统在多个路径中查找用户输入的命令文件,然后再执行。


别名命令

即用一个自定义的命令名称来替换原本的命令名称。

**方法:**可以用alias命令创建一个属于自己的命令别名

创建别名命令格式:alias 别名=命令

删除别名命令格式:unalias 别名”

最后修改:2023 年 11 月 19 日
如果觉得我的文章对你有用,请随意赞赏