$
1.表示shell中的变量
[root@localhost ~]# a=3
[root@localhost ~]# echo $a
3
2.表示行尾
[root@localhost tmp]# cat c.txt
a
b
[root@localhost tmp]# cat -A c.txt
a$
b$
上例中,我们用-A选项看到了一般模式下我们看不到的行尾符号$。
3.!$表示上一条命令的最后一个参数
系统会自动替换!$为上一条命令的最后一个参数。
[root@localhost tmp]# ls c.txt
c.txt
[root@localhost tmp]# ls !$
ls c.txt
c.txt
;
多条命令写一行,用分号连接。
[root@localhost tmp]# pwd
/tmp
[root@localhost tmp]# mkdir awen ; cd awen ; pwd
/tmp/awen
~
用户家目录:
[root@localhost bunian]# cd ~;pwd
/root
&
丢到后台执行。丢到后台执行的任务,即使退出当前shell再进来也是可以看到的。
开启一个后台运行指令:
[root@localhost ~]# sleep 200 &
[1] 2965
[root@localhost ~]# jobs
[1]+ 运行中 sleep 200 &
使用另一个终端进来:
[root@localhost ~]# ps aux|grep sleep
root 2965 0.0 0.1 217088 840 pts/0 S 13:55 0:00 sleep 200
看到了,是pts/0这个终端执行的。
||
两条竖线代表‘或者’的意思。在程序中也表示,如果前面的代码正确,就不执行后面的程序。
[root@localhost tmp]# ls
a.txt awen c.txt
[root@localhost tmp]# ls d.txt || echo "cant't find d"
ls: 无法访问'd.txt': No such file or directory
cant't find d
注意,在使用echo命令时,如果中间有空格,需要用引号抱起来。
&&
&&的作用和||相反,它是如果前面的命令成功才执行后面的命令。
[root@localhost tmp]# ls a.txt && echo "a.txt exist"
a.txt
a.txt exist
© 版权声明
本站文章由不念博客原创,未经允许严禁转载!
THE END