作者:手机用户2502917387 | 来源:互联网 | 2023-05-27 23:31
我有一个代码,我想删除.txt文件中基于用户输入的行.
例如
item.txt包含
sword and shield:10:20:30
cloak and dagger:1:2:3
sock and shoes4:5:
very awesome things7:8:9
用户想要根据他输入的"非常棒的东西"删除整行,无论大小写如何匹配
read choice1
sed -e $choice1/d item.txt
SMA..
5
将grep与-i(忽略大小写)和-v(检索除pattern之外的所有内容)选项一起使用,如下所示:
grep -iv "Very Awesome ThiNGS" item.txt ##use "$choice1" instead of "Very Awesome ThiNGS"
Output:
sword and shield:10:20:30
cloak and dagger:1:2:3
sock and shoes4:5:
如果您需要sed解决方案,您可以执行以下操作:
sed -i.bak "/$choice/Id" test.txt
-i - inplace在文件中删除并在进行更改之前创建.bak.
我最后 - 忽略这个案子.
d在最后 - 删除该行.
1> SMA..:
将grep与-i(忽略大小写)和-v(检索除pattern之外的所有内容)选项一起使用,如下所示:
grep -iv "Very Awesome ThiNGS" item.txt ##use "$choice1" instead of "Very Awesome ThiNGS"
Output:
sword and shield:10:20:30
cloak and dagger:1:2:3
sock and shoes4:5:
如果您需要sed解决方案,您可以执行以下操作:
sed -i.bak "/$choice/Id" test.txt
-i - inplace在文件中删除并在进行更改之前创建.bak.
我最后 - 忽略这个案子.
d在最后 - 删除该行.