我有一个脚本,它接受数字然后将其移动到变量$n。问题我们如何找到名称中包含此字符/数字的目录?
答案1
由于您只想查看一级目录,因此可以使用 shell glob*$n*
ls ./*"$n"*
但这不会区分文件和目录。所以你可以使用循环并检查每种类型
for f in *"$n"*
do
if [ -d "$f" ]
then
printf "%s\n" "$f"
fi
done
或者使用find
,但请注意,这会将任何特殊字符解释$n
为模式匹配的一部分。
find . -maxdepth 1 -type d -name "*$n*"
在这种特殊情况下,您还可以使用此变体
find ./*"$n"* -maxdepth 0 -type d