Linux经常使用知识点整理

1、sed命令html

语法:java

sed [OPTION]... {script-only-if-no-other-script} [input-file]...

sed命令详解:linux

选项与参数:
-n :使用安静(silent)模式。在通常 sed 的用法中,全部来自 STDIN 的数据通常都会被列出到终端上。但若是加上 -n 参数后,则只有通过sed 特殊处理的那一行(或者动做)才会被列出来。
-e :直接在命令列模式上进行 sed 的动做编辑;
-f :直接将 sed 的动做写在一个文件内, -f filename 则能够运行 filename 内的 sed 动做;
-r :sed 的动做支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法)
-i :直接修改读取的文件内容,而不是输出到终端。
动做说明: [n1[,n2]]function
n1, n2 :不见得会存在,通常表明『选择进行动做的行数』,举例来讲,若是个人动做是须要在 10 到 20 行之间进行的,则[10,20[动做行为]]function:
a :新增, a 的后面能够接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面能够接字串,这些字串能够取代 n1,n2 之间的行!
d :删除,由于是删除啊,因此 d 后面一般不接任何咚咚;
i :插入, i 的后面能够接字串,而这些字串会在新的一行出现(目前的上一行);
p :列印,亦即将某个选择的数据印出。一般 p 会与参数 sed -n 一块儿运行~
s :取代,能够直接进行取代的工做哩!一般这个 s 的动做能够搭配正规表示法!例如 1,20s/old/new/g 就是啦!

示例:shell

sed '2,5d'                              #删除第2-5行,使用nl命令能够查看文件的行号
sed '2d'                                #删除第二行
sed '3,$d'                              #删除第三至最后一行
sed '2a drink tea'                      #在第二行后(亦便是加在第三行)加上『drink tea』字样!
sed '2i drink tea'                      #在第二行前加上『drink tea』字样!
sed '2a Drink tea or ......\            #增长两行以上,在第二行后面加入两行字,例如『Drink tea or .....』与『drink beer?』。每一行的最后加上\表示输入没有结束,而且换行了。
sed '2,5c No 2-5 number'                #第2-5行的内容取代成为『No 2-5 number』
sed -n '5,7p'                           #列出 /etc/passwd 文件内的第 5-7 行

来源:http://www.jb51.net/LINUXjishu/144593.htmlspa

2、linux中{}和()执行命令的方式 .net

1.{  }形式code

 {  echo "User report for `date`.";who; } | pr  #pr:convert text files for printing

    应该注意的:左括号“{”后面应有一个空格;右括号“}”以前应有一个分号(;)。htm

    花括号也能够包含若干单独占一行的命令:进程

    {  echo "User report for `date`."ip

       echo  "There are `who|wc -l` users logged in."

       who|sort;  } | pr

    花括号中的命令表必须用分号或者换行符终止。

2.( )形式

     (echo "User report for `date`.";who) | pr

     如上所示,在用圆括号括起成组命令时,左括号后没必要有空格,右括号以前也不需加上分号。


    二者的区别:用花括号括起来的成组命令只是在本shell内执行命令表,不产生新的进程;而用圆括号括起来的成组命令式在新的子shell内执行,要创建新的子进程,不会改变父shell的变量值及工做目录。


 --------------------

相关文章
相关标签/搜索