for subdir in */ ; do
cd $subdir
ffmpeg -i mycode
如果文件夹名称包含foo?
,如何排除ffmpeg命令我使用命令查找,是否正确?
find . -name *foo* -print
但我无法在bash for循环中实现它。
我试过这段代码:
for subdir in */ ; do
foo=$(find -type d -name '*foo*')
if [[ $subdir =~ $foo ] ; then
echo yes
ffmpeg -i mycode
else
echo no
fi
done
答案 0 :(得分:1)
在$ foo变量的开头和结尾使用*,如下所示:
foo="your_string"
for subdir in */; do
if [[ "$subdir" == *"$foo"* ]]; then
echo "$subdir - includes $foo"
else
echo "$subdir - does not include $foo"
fi
done;
答案 1 :(得分:0)
基本上Tadly的版本删除了不必要的引号:
foo="your string"
for subdir in */
do
if [[ $subdir != *$foo* ]]
then
echo ffmpeg -i "$subdir"...
else
echo skipping $subdir
fi
done