替换文件中的数字范围

时间:2017-03-01 23:15:32

标签: shell awk sed grep

我想用另一个范围替换文件中的数字范围。我想说:

/dev/raw/raw16
/dev/raw/raw17
/dev/raw/raw18

我想将它们修改为:

/dev/raw/raw1
/dev/raw/raw2
/dev/raw/raw3

我知道我可以使用sed或awk来做,但是无法正确编写它。最简单的方法是什么?

3 个答案:

答案 0 :(得分:2)

awk救援!

$ awk -F'/dev/raw/raw' '{print FS (++c)}' ile

/dev/raw/raw1
/dev/raw/raw2
/dev/raw/raw3

答案 1 :(得分:0)

我不建议更改设备名称。 无论如何,只是为了替换字母或数字,您可以使用选项' s'与sed。

cat file.txt | sed s/raw16/raw1/g; > newfile.txt

在此示例中,您将所有raw16替换为raw1。 这里有一些其他的例子......

 sed 's/foo/bar/'                    # replaces in each row the first foo only
 sed 's/foo/bar/4'                   # replaces in each row every 4.
 sed 's/foo/bar/g'                   # replaces all foo with bar
 sed 's/\(.*\)foo/\1bar/'            # replace the last only per line

答案 2 :(得分:0)

$.ajax({
  context: this
})
.then(function() {
  // `this` : `this` within `.each()`
})

注意:

  • 根据您的实际需要调整字段分隔符
  • 适用于您的数据样本的套件,而不是其他元素在行中但您可以轻松地根据您的目的调整此代码