zoukankan      html  css  js  c++  java
  • sed工具使用3

    sed的&选型:替换固定字符串

    这是对替换的一个优化,在替换时有时还要保留旧的同时在加上一些新的,这时旧的就可以用&来代替不用在重新写一遍,但是&是整体的,如果对旧的一小部分替换则&不适合使用了

    例子:在passwd文件中在第一部分也就是用户名加上一些空格符

    sed 's/[a-z_-]+/&  /'  passwd

    例子:大小写转换

    元字符ul是对首字母的转换,UL是对一串字符串的转换,其中u是小写转大写l是大写转小写

    sed '/s[a-z_-]+/u&/  passwd

    例子:将文件夹下的.txt文件吗转换为大写

    ls *.txt| sed 's/^w+/U&/'

    ( )是替换某种(部分)的字符串(1,2)

    例子:数据筛选

    例子获取ip跟前面获取方法不同;

    android@android-Latitude-E4300:~$ ifconfig wlan0|sed -n '2p'|sed 's/in.*r:([0-9.]+) .*$/ 1/'
              172.21.214.54
    android@android-Latitude-E4300:~$

    例子:

    获取passwd的USER,UID,GID

    sed 读和写

    r:复制制定文件插入到匹配行,对文件不会改变

    w:复制匹配行到指定文件里,对目标文件会改变,所以要小心

    android@android-Latitude-E4300:~$ sed '1r 123.txt' abc.txt 
    1代表将源文件123.txt插入到目标文件abc.txt的第一行之后

    android@android-Latitude-E4300:~$ sed '1w abc.txt' 123.txt

    是将源文件123.txt的第一行写入到目标文件abc.txt中,这是abc.txt里面的内容将会被覆盖,可以不指定几行

    sed 提前退出:q

    android@android-Latitude-E4300:~$nl passwd | sed -n '10q' 

    打印10行就退出

    sed总结

  • 相关阅读:
    vue中的样式
    v-model 双向数据绑定
    v-on 事件修饰符
    Linq Join
    Elasticsearch.Net 异常:[match] query doesn't support multiple fields, found [field] and [query]
    MongoDB开启权限认证
    elasticsearch备份与恢复
    elasticserach + kibana环境搭建
    Kibana TypeError : Object #<GlobalState> has no method 'setDefaults'
    匿名函数
  • 原文地址:https://www.cnblogs.com/shamoguzhou/p/7090677.html
Copyright © 2011-2022 走看看