这个shell脚本是否正确?

时间:2015-04-19 06:15:52

标签: android shell sed

我有shell script这样:

 sed -i '/^###########/,/^#End of Build.Prop/d' /system/build.prop;
 #
 sed -i '/^#Start Build.Prop Tweak/,/^#End of Build.Prop Tweak/d' /system/build.prop;
 #
 sed -i '/^#Start Build.Prop Tweak/,/^ro\.config\.hwfeature_wakeupkey=0/d' /system/build.prop;

在上面提到的三个Shell命令中,当放入sh文件时,它们都不起作用。但是,如果我使用TerminalEmulator,则可以执行三个脚本

我想在Android设备中使用脚本

1 个答案:

答案 0 :(得分:1)

不,这太危险了 缺少结束搜索标记时,您将删除文件的大部分内容。 如果要删除文件中的第一行和第二行,它似乎正常工作:

$ cat test.txt
first line
second line
third line

$ cat test.txt | sed '/first/,/second/ d'
third line

编辑:使用sed '/first/,/second/ d' test.txt

减去一个命令

但是当找不到第二行时会发生什么? 你的sed命令应该跳过删除行,但它会:

$ cat test.txt | sed '/first/,/mistake/ d'
$

编辑:使用sed '/first/,/mistake/ d' test.txt

减去一个命令

第一场比赛的所有线路都已删除!