Bash 条件 shell 变量
Bash conditional with shell variable
我想检查 [ -f "" ]
文件是否存在,但它不工作。该命令正在处理 [ -f "filename.xml" ]
.
等纯文本
我回应了 </code>,例如 <code>filename.xml
。有什么想法吗?
sourcePath=/SPECIFICPATH/;
echo $sourcePath;
echo ;
find /EXAMPLEPATH -name pages -type d -execdir bash -c 'cd pages && [ -f "" ] && pwd && cp $sourcePath .' \;
我正在使用 shell 脚本块在 automator 中工作。
您正在使用 bash -c …
调用全新的 shell,因此您需要传递 </code>。与<code>$sourcePath
相同,如果不导出。
find /EXAMPLEPATH -name pages -type d -execdir bash -c 'cd pages && [ -f "" ] && pwd && cp "" .' bash "" "$sourcePath" \;
(在bash -c … bash "" "$sourcePath"
中,第二个bash
是[=16=]
。)
如果将一些逻辑移至 find 命令,则不需要子 shell。
find /EXAMPLEPATH -wholename "*/pages/" -print -execdir cp "$sourcePath" . \;
-wholename
匹配 pages
目录中名为 </code> 的文件。</li>
<li><code>-print
替换 pwd
.
- 现在可以直接调用
cp
了。
我想检查 [ -f "" ]
文件是否存在,但它不工作。该命令正在处理 [ -f "filename.xml" ]
.
我回应了 </code>,例如 <code>filename.xml
。有什么想法吗?
sourcePath=/SPECIFICPATH/;
echo $sourcePath;
echo ;
find /EXAMPLEPATH -name pages -type d -execdir bash -c 'cd pages && [ -f "" ] && pwd && cp $sourcePath .' \;
我正在使用 shell 脚本块在 automator 中工作。
您正在使用 bash -c …
调用全新的 shell,因此您需要传递 </code>。与<code>$sourcePath
相同,如果不导出。
find /EXAMPLEPATH -name pages -type d -execdir bash -c 'cd pages && [ -f "" ] && pwd && cp "" .' bash "" "$sourcePath" \;
(在bash -c … bash "" "$sourcePath"
中,第二个bash
是[=16=]
。)
如果将一些逻辑移至 find 命令,则不需要子 shell。
find /EXAMPLEPATH -wholename "*/pages/" -print -execdir cp "$sourcePath" . \;
-wholename
匹配pages
目录中名为</code> 的文件。</li> <li><code>-print
替换pwd
.- 现在可以直接调用
cp
了。