我想用我的日期替换文件中的日期。为此,我给出以下命令 -
tr '2016-05-25' '2016-06-17' < APCSE060.20160525 > TESTFILE
或者
cat APCSE060.20160525 | tr '2016-05-25' '2016-06-17' > TESTFILE
在这两个命令中我都收到以下错误 -
tr: 0653-716 Character range endpoints out of order.
答案1
tr
是一个执行逐个字符翻译的命令。例如,以下命令会将字符更改e
为E
$ echo hello | tr 'e' 'E'
hEllo
当你使用时,你2016-05-25
告诉tr
命令切换字符2
和0
和1
范围 6-0
...这就是令人困惑的地方。
您真正想要使用的命令是 sed:
$ sed 's/2016-05-25/2016-06-17' < SRCFILE > NEWFILE