我正在编写一个脚本。我让它调用一个具有输入目录的程序。
如果从命令行执行该程序,它看起来像这样
/path/to/program -c /path/to/config -d "path/to/directory"
我正在使用变量作为目录路径。"${name}"
我遇到的问题是程序需要双引号作为目录路径。我必须在变量中使用双引号来覆盖空格等。
find $SRC -type d -name '*' | while read name;
do
$program -c $pgm_config -d "${name}";
done
脚本有点用。程序正在拾取目录,但它似乎也在拾取文件夹中的所有其他内容。单个文件等。我确信这要么是真的错了,要么是我遗漏了一些简单的东西。我尝试了几种不同的方法,看看我是否可以通过反复试验来解决问题。""${name}""
'"${name}"'
但都没有成功
答案1
\
当您想要使用被视为语法一部分的符号时,您必须使用转义字符或这个。
find $SRC -type d -name \* | while read name;
do
$program -c $pgm_config -d \"${name}\";
done
请记住,这将看起来像隐藏目录,就像那些名称以 开头的目录一样.
。