* 代表0个或多个任意字符
? 只代表一个任意字符
# 注释符号
\ 脱意符号
[root@zekLinux ~]# ls #1.txt #将后面内容注释 只运行了ls
111 1.tar 3.txt install.log yasuo.zip
111.tar 1.txt anaconda-ks.cfg install.log.syslog
123.txt 2.txt a.txt yasuo
[root@zekLinux ~]# ls \#1.txt \脱意字符将#原本意义去掉
ls: 无法访问#1.txt: 没有那个文件或目录 此时将#1.txt作为文件名
[root@zekLinux ~]# touch \#1.txt|ls
111 123.txt #1.txt 2.txt anaconda-ks.cfg install.log yasuo
111.tar 1.tar 1.txt 3.txt a.txt install.log.syslog yasuo.zip
| 管道符
$ 变量的前缀,获得或使用变量时在其前加上$
!$ 表示将上条命令中最后一个变量
[root@zekLinux ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp/:/data/bin/:/root/bin
[root@zekLinux ~]# !$
$PATH
-bash: /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp/:/data/bin/:/root/bin:
没有那个文件或目录
; 用于两条命令的中间(两条命令写在一行)
[root@zekLinux ~]# ls 1.txt ;ls 1.tar
1.txt
1.tar
~ 用户家目录
[root@zekLinux ~]# ls ~
111 123.txt #1.txt 2.txt anaconda-ks.cfg install.log yasuo
111.tar 1.tar 1.txt 3.txt a.txt install.log.syslog yasuo.zip
& 将命令放到后台执行(在一条命令后加&)
[root@zekLinux ~]# sleep 10 &
[1] 1647
[root@zekLinux ~]# jobs
[1]+ Running sleep 10 &
[root@zekLinux ~]# jobs
[1]+ Done sleep 10
重定向符号:>,>>,2<,2<<,<
#echo "123">1.txt > 覆盖原文件1.txt的内容
[root@zekLinux ~]# echo "123">1.txt
[root@zekLinux ~]# cat 1.txt
123
若不想覆盖用追加重定向 >>
[root@zekLinux ~]# echo "456">>1.txt
[root@zekLinux ~]# echo "789">>1.txt
[root@zekLinux ~]# cat 1.txt
123
456
789
反向重定向 < 把一个文件内容丢给一个命令
如:[root@zekLinux ~]# wc -l < 1.txt
3
错误重定向:2>,2>>
[root@zekLinux ~]# ls 11111
ls: 无法访问11111: 没有那个文件或目录
[root@zekLinux ~]# ls 11111 > 1.txt 同样会覆盖原文件内容
ls: 无法访问11111: 没有那个文件或目录[root@zekLinux ~]# ls 11111 2> 1.txt
[root@zekLinux ~]# cat 1.txt
ls: 无法访问11111: 没有那个文件或目录
不覆盖原文件内容:2>>
[root@zekLinux ~]# ls 11111 2>> 1.txt
[root@zekLinux ~]# cat 1.txt
ls: 无法访问11111: 没有那个文件或目录
ls: 无法访问11111: 没有那个文件或目录
[] 括号里为字符组合,代表字符中的任意一个
[root@zekLinux ~]# ls [123].txt
1.txt 2.txt 3.txt
[root@zekLinux ~]# ls [1-9a-zA-z].txt
1.txt 2.txt 3.txt a.txt