Bash 如何从csv文件中删除特定短语

Bash 如何从csv文件中删除特定短语,bash,Bash,所以我有一个CSV文件,test.CSV,包含以下内容: Apples Pears Oranges 如果是csv文件,它们将以逗号分隔 我有一个变数 test="app" 我想删除csv文件中包含该变量内容的任何内容。因此,输出将位于新文件test1.csv中: Pears Oranges 您可以使用sed执行此操作。 如果要删除包含test变量值的整行。然后试试- user@localhost$ sed "/$test/d" test.csv > output.csv 如果要替换

所以我有一个CSV文件,
test.CSV
,包含以下内容:

Apples
Pears
Oranges
如果是csv文件,它们将以逗号分隔

我有一个变数

test="app"
我想删除csv文件中包含该变量内容的任何内容。因此,输出将位于新文件test1.csv中:

Pears
Oranges

您可以使用
sed
执行此操作。

如果要删除包含
test
变量值的整行。然后试试-

user@localhost$ sed "/$test/d" test.csv > output.csv
如果要替换保存var
测试的单词,请尝试-

user@localhost$ replacewith=''
user@localhost$ sed "s/$test/$replacewith/g" test.csv > output.csv

NB:Replace和Delete的含义相同,如果您使用空白字符串作为替换。

您可以使用sed获得这样的结果:

sed '/dog/d' inputfile.csv > outputfile.csv
您还可以使其不区分大小写:

sed '/[dD][oO][gG]/d' inputfile.csv > outputfile.csv

后者使用的语法是RegEx,请阅读更多相关信息。

苹果是否也将被删除?
grep-vi“app”test.csv
这是否回答了您的问题?结合