学习 Shell —— 括号、引号

来源:互联网 发布:数据结构栈和队列java 编辑:程序博客网 时间:2024/06/03 15:05
  • shell中各种括号的作用()、(())、[]、[[]]、{}
  • shell中的括号(小括号,大括号/花括号)

  • ${},大括号用于确定变量的范围;

0. 引号

单引号、双引号、飘号( ` ,英文状态下的键盘上的波浪号)

  • 单引号不解析变量
  • 双引号会解析变量,用的较多
  • 飘号是执行内容,类似于$(…)
[root@hadoop0 ~]# echo $(date)Sat Mar 12 17:26:28 EST 2016[root@hadoop0 ~]# echo `date`Sat Mar 12 17:27:44 EST 2016

1. 大括号

touch {a,b}.txt ⇒ a.txt b.txttouch {a..d}.txt ⇒ a.txt b.txt c.txt d.txt

2. 小括号

  • $(cmd)和符号cmd(注意这不是单引号,在美式键盘上,`是ESC下面的那个键)有相同之处
  • shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)中的cmd执行一次,得到其标准输出,再将此输出放到原来命令echo $(ls)中的$(ls)位置,即替换了$(ls),再执行echo命令。
$ lsa b$ echo $(ls)a b$ echo `ls`a b

3. 小括号与大括号的区别:

  • ()和{}都是对一串的命令进行执行,但有所区别:
    • ()只是对一串命令重新开一个子shell进行执行
    • {}对一串命令在当前shell执行
    • ()和{}都是把一串的命令放在括号里面,并且命令之间用;号隔开
    • ()最后一个命令可以不用分号
    • {}最后一个命令要用分号
    • {}的第一个命令和左括号之间必须要有一个空格
    • ()里的各命令不必和括号有空格
    • ()和{}中括号里面的某个命令的重定向只影响该命令,但括号外的重定向则影响到括号里的所有命令

4. 括号辨异

  • shell中各种括号的作用()、(())、[]、[[]]、{}

    • 大括号:
      • touch {a,b}.txt ⇒ a.txt b.txt
      • touch {a..d}.txt ⇒ a.txt b.txt c.txt d.txt
    • 小括号:
      • $(cmd)和符号cmd(注意这不是单引号,在美式键盘上,是ESC下面的那个键)有相同之处 </li>
        <li>shell扫描一遍命令行,发现了
        $(cmd)结构,便将$(cmd)中的cmd执行一次,得到其标准输出,再将此输出放到原来命令echo $(ls)中的$(ls)位置,即替换了$(ls)`,再执行echo命令。
    $ lsa b$ echo $(ls)a b$ echo `ls`a b
    • 小括号与大括号的区别:

      • ()和{}都是对一串的命令进行执行,但有所区别:
        • A,()只是对一串命令重新开一个子shell进行执行
        • B,{}对一串命令在当前shell执行
阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 w7系统反应慢怎么办 思维缓慢发呆书呆子怎么办 苹果手机网速慢怎么办? 在美国警察杀人怎么办? 征兵填写不知道怎么办 长虹子画面关怎么办 土地被村长霸占怎么办 半夜 手机卡掉了怎么办 淘宝号买家违规怎么办 镍氢电池没电了怎么办 地下室对讲机信号不好怎么办 cf不能说话了怎么办 cf没办法说话怎么办 cf对讲机没声音怎么办 交警用的对讲机怎么办 cf语音没有声音怎么办 去上海没有流量怎么办 去外地没流量怎么办 外地流量不够用怎么办 手机在外地流量怎么办 联通网卡在外地怎么办 套餐流量不够用怎么办 省内流量去省外怎么办 在外省流量不够怎么办 榨汁机开关坏了怎么办 健伍dvd没遥控器怎么办 佳能 显示屏关不了怎么办 iqos充电闪红灯怎么办 航班取消了乘客怎么办 摩托罗拉电话静音了怎么办 对讲机话筒坏了怎么办 摩托罗拉xt1570费电怎么办 主板没有rgb接口怎么办 对讲机频段没了怎么办 怀孕查出宫颈囊怎么办 办养殖场没地怎么办 宝宝睡觉衣服湿透怎么办 开衫衣服往下滑怎么办 迷你世界没有牛怎么办 火龙果树烂了怎么办 误喝鸵鸟墨水怎么办