用sed命令替换文本

新手上路,请多包涵

如图,我要将文本中的2015-12-31替换为2015-12-31 (加一个空格,让日期与时间中间有一个空格),使用命令:sed -n 's/2015-12-31/2015-12-31 /g' file name.txt,执行此命令如何没实现呢?图片描述

阅读 5.1k
3 个回答

使用sed -i
sed是一个流编辑器,它从文件里读取流然后编辑,编辑后不会自动重新输出到文件里。使用sed -i可以完成这一步。

新手上路,请多包涵

图片描述是不是不支持-i命令?我用sed 's/2015-12-31 /2015-12-31/g' file name.txt > text.txt实现了替换。

javascript@linux:~/test$ cat a.txt
2015-12-3110:02:42
2015-12-3110:03:09
javascript@linux:~/test$ sed 's/2015-12-31/& /g' a.txt
2015-12-31 10:02:42
2015-12-31 10:03:09
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进