0
我有一個文件$ HOME /富/ foo.movglob在Bash中與[[]] vs []有什麼不同?
if [[ -f $HOME/**/*.mov ]]; then
echo "file is there" else
echo "file is not there"
fi
回聲 「文件不存在」。然而,
if [ -f $HOME/**/*.mov ]]; then
echo "file is there" else
echo "file is not there"
fi
回聲 「文件中有」。
爲什麼[[]]和[]之間的區別?
相關:https://unix.stackexchange.com/questions/306111/confused-about-operators-vs-vs-vs –
shellcheck告訴我[-f]不能與globs一起使用。真的嗎? – Bleakley
@Bleakley我懷疑是這樣的,glob在執行命令前展開了,所以如果有多個事情與glob相匹配,那麼'''f'會有太多參數,如果'nullglob'啓用了'如果glob不匹配任何東西,那麼d太少了。你想知道是否有任何文件,就是這樣嗎? –