如果匹配则查找字符串,然后复制行字符串

时间:2014-02-24 11:46:56

标签: bash

我想让变量包含在字符串下面 v1 =“select * from tablename where id> 1000”

现在我希望将此select转换为删除,但是通过bash / ksh脚本。

比如当字符串“from”匹配的其余部分复制到变量并且很容易转换为删除语句时,如下面的行
 从表名中删除,其中id> 1000;

2 个答案:

答案 0 :(得分:0)

您可以像这样使用sed:

v1="select c1,c2 from tablename where id > 1000"
sed '/select .* from /s/select .* from/delete from/' <<< "$v1"
delete from tablename where id > 1000

答案 1 :(得分:0)

怎么样:

sed 's/select .* \(from .*\)/delete \1/' sqlfile.txt