小编use*_*206的帖子

Grep命令被特殊字符反转?

我正在尝试编写一个bash脚本,它将在txt文件中搜索另一个存储在变量中的txt文件中的字符串.但是字符串中有许多特殊字符,由于某种原因,它似乎破坏了grep命令.字符串如下:Sometxt ^/someurl /?$ http://somewebsite.com/

我正在使用的grep命令是

grep -v "$string" file.txt >> new_file.txt
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用,如果我使用以下命令回显实际的grep命令:

echo "grep -v \"$string\" file.txt >> new_file.txt"
Run Code Online (Sandbox Code Playgroud)

我得到了一个混乱的输出.

如果我输入grep命令手册并输入实际的字符串,它工作正常,所以我假设我的shell正在尝试扩展特殊字符,但我不知道如何在字符串中转义所有字符串.

有人有主意吗?

谢谢.

unix bash shell grep

3
推荐指数
1
解决办法
817
查看次数

标签 统计

bash ×1

grep ×1

shell ×1

unix ×1