&& :前面执行成功后面才会执行(并且)
|| :前面执行成功就不执行后面的,前面执行不成功,就执行后面的
| :管道符,作用是将管道符左边的标准输出 交给管道符右边 标准输入 来处理
, :连续条件的分割
; :不连续条件的分割
'|' :表示或者的意思
$a :调用a的变量,,同一个命令行里面多次调用变量最好用{}把变量括起来
$() :先执行()里面的
`` :反引号 ,先执行反引号里面的
'' :单引号(分割符)
"" :双引号(分隔符)
- :匹配多次,在不同的命令中,表示的意思可能不同(yum list|grep tr)(find / -name 'tr')
. :任意字符
:转义符或换行符 后面有内容的话就转义,没有内容的时候(也就是直接回车)就是换行
#连续命令的换行
[root@lb01 ~]# cd /opt/
> 10
[root@lb01 /opt/10]#
#不连续命令的换行
[root@lb01 ~]# cd /;
> ll
total 20
lrwxrwxrwx. 1 root root 7 May 1 01:00 bin -> usr/bin
dr-xr-xr-x. 6 root root 4096 May 2 09:39 boot
drwxr-xr-x 19 root root 3180 May 1 16:43 dev
drwxr-xr-x. 78 root root 8192 May 2 12:31 etc
[root@lb01 /]#
#一个命令行同时执行多条命令,用;分割
[root@lb01 ~]# cd /;ll
total 20
lrwxrwxrwx. 1 root root 7 May 1 01:00 bin -> usr/bin
dr-xr-xr-x. 6 root root 4096 May 2 09:39 boot
drwxr-xr-x 19 root root 3180 May 1 16:43 dev
drwxr-xr-x. 78 root root 8192 May 2 12:31 etc
[root@lb01 /]# pwd
/
#所在路径不变
[root@lb01 ~]# (cd /;ll)
total 20
lrwxrwxrwx. 1 root root 7 May 1 01:00 bin -> usr/bin
dr-xr-xr-x. 6 root root 4096 May 2 09:39 boot
drwxr-xr-x 19 root root 3180 May 1 16:43 dev
drwxr-xr-x. 78 root root 8192 May 2 12:31 etc
[root@lb01 ~]# pwd
/root
# 指定目录下的文件和目录可以同名吗?您细品
...(若干操作)
[root@lb01 /opt]# ll
total 0
drwxr-xr-x 2 root root 6 May 2 13:05 a.txt
drwxr-xr-x 2 root root 6 May 2 13:06 a.txt
啊哈?同名了哦~
[root@lb01 /opt]# rm -rf ./*
[root@lb01 /opt]# ll
total 0
[root@lb01 /opt]# mkdir a.txt #转义符后面有个空格
[root@lb01 /opt]# ll
total 0
drwxr-xr-x 2 root root 6 May 2 13:06 a.txt
[root@lb01 /opt]# mkdir a.txt #2个转义符后面各有一个空格
[root@lb01 /opt]# ll
total 0
drwxr-xr-x 2 root root 6 May 2 13:05 a.txt
drwxr-xr-x 2 root root 6 May 2 13:06 a.txt
#文件后面空格数不同,不是同名哦~
Linux中变量#,@,0,1,2,*,$$,$?的含义
$# 是传给脚本的参数个数
$0 是脚本本身的名字
$1 是传递给该shell脚本的第一个参数
$2 是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误