首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

Shell 学习札记(一)特殊字符

2012-07-20 
Shell 学习笔记(一)特殊字符1、点(.)字符匹配.作为正则表达式的一部分,匹配字符时,单点(.)表示匹配任意一个

Shell 学习笔记(一)特殊字符

1、点(.)字符匹配.作为正则表达式的一部分,匹配字符时,单点(.)表示匹配任意一个字符

?

2、: [冒号].

???????? 空命令?这个命令意思是空操作(

?

7、 |

???????管道以新进程方式运行

?

8、 -

?????? 用于stdin或stdout重定向的源或目的

?????? e.g.? 当用管道时,对于多参数,就可以用-解决啦,重定向源: grep Linux file1 | diff file2 -

????????????????????????????????????????? 重定向目的: tar -cvf - file1 > file2.tar

?

?

9、!

??????感叹号表历史命令

??????在命令行上,把感叹号"!"放在双引号里执行命令会出错(译者注:比如说:echo "hello!"). 因为感叹号被解释成了一个历史命令. 然而在一个脚本文件里,这么写则是正确的,因为在脚本文件里Bash的历史机制被禁用了。

?

10、双引号 单引号

????? 使用双引号除了变量名前缀($)、后引符(`)和转义符(\)外,其余均只解释为字面

?

??????在单引号内,除了字符',每个特殊字符都只是字面的意思。单引号(全局引用)比双引号(部分引用)更严格的处理引用部分。

??????若想打印 ‘号: echo \'

????????????????????????????? echo 'can' \' 't'???????? #can ' t

??????????????????????????????echo 'can'\''t'?????????? #can't

?

11、转义

????? \v? :?? 垂直制表符

??????\a? :?? 蜂鸣声(禁止操作声音)

?

?????echo -e “\n”??????????? ==???????? echo $'\n'

?????$'\xxx'? : 转义字符取值???? e.g. ABC=$'\101\102\103\010\t'

????

???? 出乎意料:

?????echo \z???????????????????? #? z
???? echo "\z"??????????????????# \z????
?????echo `echo \\z`?????? # z??????

?????echo `echo \\\z`????? # \z???? 未转义过的还可加\转义,已转义过的之前\只能输出字面啦

?????echo `echo "\z"`????? # \z???? 双引号一加,就绝对化啦
?????

?????转义\的赋值

?????variable=\
???? 23skidoo
???? echo "$variable"??????? #? 23skidoo???这样就能工作,因为\将其后的换行符转义了哦

?

12、快捷操作

????? ctl+D:标准输入结束????? ctl+H:Backspace??????ctl+K:在控制台或xterm 窗口输入文本时, Ctl-K 会删除从光标所在处到行尾的所有字符??????ctl+L:清屏????? ctl+U:删除从光标到行首的一行输入.在某些设置里,Ctl-U 删除整行的输入,而不管光标的位置.????? ctl+W:删除前面的词,直到遇到空格