shell之sed的一些命名

2018-12-17  本文已影响0人  龙葵他
  1. 获取某个字符串所在的行数
sed -n -e '/RTE_SDK/=' ~/.bashrc
#这里是获取 ~/.bashrc文件中,字符串“RTE_SDK”所在的行数
  1. 获取文本中某一行某一列的字符
sed -n 13p ~/.bashrc | cut -d "/" -f4
#这里是获取~/.bashrc文件中第13行,第4列的内容,其中第13行的字符串是按照“/”进行切割的
  1. sed结果赋值变量
    当我们想将sed查询的结果赋值给shell变量时,要在sed语句外面加``这对儿符号,就是键盘esc下面的,比如说把行号赋值给line变量
line=`sed -n -e '/RTE_SDK/=' ~/.bashrc`

另一种将命令结果赋值变量的方法是使用子shell法

line=$(sed -n -e '/RTE_SDK/=' ~/.bashrc)

当我们的命令输出中有空格或者是换行符时,为了在保留的变量中不丢失这些,需要使用双引号

line="$(sed -n -e '/RTE_SDK/=' ~/.bashrc)"
  1. sed替换字符串
sed -i 's/123/345/g' /usr/src/test
#将/usr/src/test文件中的123字符串全部替换为345字符串
#其中-i 是的sed用替换后的数据替换原始文件
#  /g对文件中的字符串全局替换
上一篇 下一篇

猜你喜欢

热点阅读