作家
登录

Shell中的命令替换及参数扩展

作者: 来源: 2017-12-25 10:43:12 阅读 我要评论

【限时免费】岁尾最强一次云计算大年夜会,看传统、社区、互联网企业若何碰撞?


 

Shell中的敕令调换及参数扩大

媒介

其实,你如今浏览到的是第三版的文┞仿(几乎全部重构)。记得我写第一版的时刻,照样一名 “参赛选手”。后来比赛掉利便和同伙一路做 IDC 创业。第二次改的时刻,是我发明浏览量在俩三个月内直接本身站点 top 到第一,加上介入了开源社区,保护了 LCTT-CLI 项目。最后第三次也就是此次,是因为经由过程了 RHCE 模仿考加上一年多积聚。所以此次的内容或是排版都应是最棒!BTW:这篇文┞仿在我的博客IT兄弟盟,依旧是第一的浏览量!

一开端写这篇文┞仿是因为兼职创业 IDC 公私运维,须要一点 shell script 来实现某些需求。固然如今已经是 Python 的时代了。插个话题,我怎么懂得 Python 和 Shell 呢?拿泅水来做个比方:前者是正规泅水馆,有正规锻练帮助相伴;后者是乡间小湖泊,麻雀虽小五脏俱全。人工智能选中的 Python 势必锋弗成当,经典的 Shell 也相当精妙绝伦。比如以前我写 Shell 的时刻用了很多 if else 语句、 case 语句,有 test 语句,懂得 || && ; 帮助,这是最小白的。后面进修了很多比较运算符,但多半照样在积聚敕令数量以及前提语句。再到如今,我开端去思虑敕令和敕令之存放在的关系、语句分隔符的意义、BASH 控制构造等等。

所以今天和大年夜家分享的主如果 “敕令调换” 以及 “参数扩大” 。

什么是敕令调换

简单的来说就是在 SHELL 内嵌套多条敕令,一次性履行获得结不雅。

1、一层 SHELL 嵌套

  1. # echo `whoami`
  2. # echo $(whoami)
  3.  
  4. # echo "hello,`whoami`"
  5. # echo "hello,$(whoami)"

2、二层 SHELL 嵌套

留意:{} 改变 var 的变量今后,外部也受到了影响。

什么是参数扩大

  1. # echo `cat ./gn2.txt` | sed -s "s;$; --list;"

应用 ``攫取文件内容,再应用管道符二次处理后。履行!

留意:这里已经用了一层嵌套,以下多个末节会套用以实现二层嵌套。

a. 应用 "$()" 进行二层嵌套

b. 应用 "|" 进行敕令导向

c. 留意事项以及解答一些疑问

可能有读者已经留意到了,之前在简单 SHELL 一层嵌套中说了嵌套还有另一种。那为什么不应用 ` ` 进行嵌套。

  • 根本的原因是:` ` 不支撑敕令嵌套履行!
    • 强迫履行。也只能认出第一组,其余按照空格作为距离各个履行 或 按照管道符(含)直到末尾履行。
  • 比较陈腐。轻易与“单引号”混淆。
    • 它是美式键盘左上角 ESC 下面的包含 ~ 的反引号键!
  • 已有替代品。$(...) 格局受到POSIX标准支撑,也利于嵌套。
    • $() 可以独裁嵌套类似 $($($())) ,但如不雅内部有一个` ` 也是可以履行的哟(出于兼容推敲)!

3、进阶

  1.  1/5    1 2 3 4 5 下一页 尾页

      推荐阅读

      如果你要做这类网站,千万别选虚拟主机!

    【限时免费】岁尾最强一次云计算大年夜会,看传统、社区、互联网企业若何碰撞? >>>详细阅读


    本文标题:Shell中的命令替换及参数扩展

    地址:http://www.17bianji.com/lsqh/40126.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)