Linux_note shell中特殊符号

* 代表0个或多个任意字符

? 只代表一个任意字符

# 注释符号

\ 脱意符号

[[email protected] ~]# 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

[[email protected] ~]# ls \#1.txt     \脱意字符将#原本意义去掉

ls: 无法访问#1.txt: 没有那个文件或目录   此时将#1.txt作为文件名

[[email protected] ~]# 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

| 管道符

$ 变量的前缀,获得或使用变量时在其前加上$

!$  表示将上条命令中最后一个变量

[[email protected] ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp/:/data/bin/:/root/bin

[[email protected] ~]# !$

$PATH

-bash: /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/tmp/:/data/bin/:/root/bin:

没有那个文件或目录

;  用于两条命令的中间(两条命令写在一行)

[[email protected] ~]# ls 1.txt ;ls 1.tar

1.txt

1.tar

~  用户家目录

[[email protected] ~]# 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

& 将命令放到后台执行(在一条命令后加&)

[[email protected] ~]# sleep 10 &

[1] 1647

[[email protected] ~]# jobs

[1]+  Running                 sleep 10 &

[[email protected] ~]# jobs

[1]+  Done                    sleep 10

重定向符号:>,>>,2<,2<<,<

#echo "123">1.txt  > 覆盖原文件1.txt的内容

[[email protected] ~]# echo "123">1.txt

[[email protected] ~]# cat 1.txt

123

若不想覆盖用追加重定向 >>

[[email protected] ~]# echo "456">>1.txt

[[email protected] ~]# echo "789">>1.txt

[[email protected] ~]# cat 1.txt

123

456

789

反向重定向 < 把一个文件内容丢给一个命令

如:[[email protected] ~]# wc -l < 1.txt

3

错误重定向:2>,2>>

[[email protected] ~]# ls 11111

ls: 无法访问11111: 没有那个文件或目录

[[email protected] ~]# ls 11111 > 1.txt 同样会覆盖原文件内容

ls: 无法访问11111: 没有那个文件或目录[[email protected] ~]# ls 11111 2> 1.txt

[[email protected] ~]# cat 1.txt

ls: 无法访问11111: 没有那个文件或目录

不覆盖原文件内容:2>>

[[email protected] ~]# ls 11111 2>> 1.txt

[[email protected] ~]# cat 1.txt

ls: 无法访问11111: 没有那个文件或目录

ls: 无法访问11111: 没有那个文件或目录

[] 括号里为字符组合,代表字符中的任意一个

[[email protected] ~]# ls [123].txt

1.txt  2.txt  3.txt

[[email protected] ~]# ls [1-9a-zA-z].txt

1.txt  2.txt  3.txt  a.txt

时间: 2024-08-26 00:04:27

Linux_note shell中特殊符号的相关文章

1.4 shell中特殊符号

#命令输入特殊符号 * 是匹配0个或多个字符 ? 是匹配一个字符 #是加上这行不生效 \ 是脱义符 $是变量的前缀,使用变量 ; 是用在两条命令的中间 []是匹配两个文件 ls [12].txt  == ls 1.txt 2.txt 习题: 1. 下面特殊符号的用法哪个是对的? ls *.txt会把1.txt  22.txt 333.txt全部列出来 ls ?.txt会把1.txt  2.txt  3.txt全部列出来 touch \#会创建一个文件名为#的文件 2. 分号在shell中有什么用

shell 中特殊符号

在学习linux的过程中,也许你已经接触过某个特殊符号,例如"*",它是一个通配符号,代表零个或多个字符或数字.下面阿铭就说一说常用到的特殊字符. * 代表零个或多个任意字符. [[email protected] ~]# ls -d test* test  test1  test2  test3 ? 只代表一个任意的字符 [[email protected] ~]# touch testa [[email protected] ~]# touch testb.txt [[email 

shell中特殊符号

*   多个 ?   1个 #   注释符 \    脱义符 |     管道符 $    作为变量的前缀,用于使用变量 !$   使用上一条命令的最后一个参数 ;     用于两条命令的中间写在一行 ~   用户的家目录 &   表示命令丢到后台     比如    sleep 100 & >    重定向 >>  追加重定向 2>   错误重定向 2>> 错误追加重定向 <     反重定向 []     表示范围中的一位   比如[0-9]

Shell中的符号(施工中。。。)

1.` 和 $()的区别 反引号本身就对\进行了转义,保留了其本身意思,如果我们想在反引号中起到\的特殊意义,我们必须使用2个\来进行表示.所以我们可以简单的想象成反引号中: \\ = \ $()中则不需要考虑\的问题,与我们平常使用的一样:\ = \ 题外话: 反引号是老的用法,$()是新的用法,不管是在学习测试中,还是在实际工作中,$()的用法都是被推荐的. 2.eval命令 3.crontab命令 crontab命令的功能是在一定的时间间隔调度一些命令的执行. 我们可以用crontab -

shell中的界定

shell中有些符号在不同界定下会被不同处理,界定主要有3种方式: (1)单引号 (2)双引号 (3)反引号 我们最常用的就是双引号和单引号,对于这2个符号,用$变量可以很清楚的说明它们的区别,如下: [[email protected] ~]$ echo 'Home is $HOME' Home is $HOME [[email protected] ~]$ echo "Home is $HOME" Home is /home/map 我们可以很清楚的总结出规律:单引号中$HOME被

shell中常用的特殊符号

在shell中常用的特殊符号罗列如下: # ; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# [email protected] `command`{} [] [[]] () (()) || && {xx,yy,zz,...}~ ~+ ~- & \<...\> + - %= == != # 井号 (comments) 注释字符 该句不会被执行 ~ 帐户的 home 目录 用户的

linux shell中的比较符号与特殊符号介绍

shell字符串比较.判断是否为数字  二元比较操作符,比较变量或者比较数字.注意数字与字符串的区别.  整数比较  -eq 等于,如:if [ "$a" -eq "$b" ]  -ne  不等于,如:if [ "$a" -ne "$b" ]  -gt 大于,如:if [ "$a" -gt "$b" ]  -ge 大于等于,如:if [  "$a" -ge "

linux shell中的特殊符号

该内容,均来自此网址(http://www.92csz.com/study/linux/12.htm).在下只是把那些命令的截图给去了. 你在学习linux的过程中,也许你已经接触过某个特殊符号,例如”*”,它是一个通配符号,代表零个或多个字符或数字.下面笔者就说一说常用到的特殊字符. 1. * :代表零个或多个字符或数字. test后面可以没有任何字符,也可以有多个字符,总之有或没有都能匹配出来. 2. ? :只代表一个任意的字符 不管是数字还是字母,只要是一个都能匹配出来. 3. # :这个

shell 中的特殊符号的含义

来源:http://blog.sina.com.cn/s/blog_62a151be0100x9rn.html 第四章 基本功 - 特殊符号 学习撰写 script 最迅速的捷径是观摩别人的 script 档案.不过,此法儘管实际,但这对于 shell 基础认知不足的人来说,通常都得到"事倍功半",甚至半途而废.通常第一个问题就是搞不懂那些"特殊符号"到底在代表什么意义,又到底她们干了些什么? 以下,农夫尝试列出常用的特殊符号表列,并在说明中加入简短的范例.原则上,