Chinaunix
标题:
如何用sed处理文件中的内容next_start_time = '2016-03-01 11:00:56'
[打印本页]
作者:
274920831
时间:
2017-03-18 15:28
标题:
如何用sed处理文件中的内容next_start_time = '2016-03-01 11:00:56'
如题:
我有写了一个shell脚本:
#!/bin/bash
update database set next_start_time = '2016-03-01 11:00:56', where id = '12345'
update database set next_start_time = '2016-03-01 11:00:56', where id = '23456'
update database set next_start_time = '2016-03-01 11:00:56',where id = '34567'
update database set next_start_time = '2016-03-01 11:00:56', where id = '45678'
我现在想用sed命令达到两种效果,第一个是把 next_start_time = '2016-03-01 11:00:56' 全部替换成 task_priority = 'urgent' ,使用sed命令应该如何来写?
第二个是把 每一行的next_start_time = '2016-03-01 11:00:56'后面都加上 task_priority = 'urgent' ,使用sed命令应该如何来写?
作者:
农民伯伯丶
时间:
2017-03-18 16:41
sed "s#next_start_time = '2016-03-01 11:00:56'#task_priority = 'urgent'#g"
sed -r "s#(set next_start_time = '2016-03-01 11:00:56',)#\1 task_priority = 'urgent'#g"
作者:
274920831
时间:
2017-03-19 10:19
回复
2#
农民伯伯丶
非常感谢农民伯伯,我也做出来了.
将每行指定的内容替换掉:
sed "s/next_start_time = '2016-03-01 11:00:56'/123/g"
由于被替换的内容有单引号,所以sed的参数是用的双引号
在每行指定的内容加123:
sed "s/next_start_time = '2016-03-01 11:00:56'/&123/g" 2
作者:
274920831
时间:
2017-03-19 10:22
回复
2#
农民伯伯丶
谢谢农民伯伯,我的命令是这样的:
替换每行指定的内容:
sed "s/next_start_time = '2016-03-01 11:00:56'/123/g" 2
由于被替换的内容是带单引号,所以sed的参数使用的是双引号
在每行指定的内容后加入123
sed "s/next_start_time = '2016-03-01 11:00:56'/&123/g" 2
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2