grep中带有参数的bash中的报价

问题描述 投票:0回答:1

我有这个脚本,可以在当前目录的所有pdf文件中找到一些文本(您好)>

find . -name '*.pdf' -exec sh -c 'pdftotext "{}" - | grep "hello" -iF --with-filename --label="{}" --color' \;

我想使用第一个参数而不是固定的字符串。我用"hello""$1"和其他组合替换了"\"$1\"",但无济于事。

我认为$1周围的双引号和单引号内的问题。

您能帮我吗?

我有这个脚本,可以在当前目录中的所有PDF中找到一些文本(您好)。 -name'* .pdf'-exec sh -c'pdftotext“ {}”-| grep“ hello” -iF --with-filename --label =“ {}” --color'\; ...

bash grep quotes
1个回答
1
投票

此代码的安全版本如下:

© www.soinside.com 2019 - 2024. All rights reserved.