人们帮助我用一个小代码对我的参数进行排序,但现在我想检查这个参数是否是一个目录。
if [ -d "$@" ]
then
echo "$@" | tr ' ' '\n' | sort
else
echo this is not a valid map!
fi
通常检查某些东西是否是您需要使用的目录[ -d file ]
但是这次它不起作用。
如果您有任何想法或解决方案,请免费发布!Ty阅读/帮助!
for f in "$@"; do
if [ ! -d "$f" ]; then
echo "Not a dir: $f"
fi
done
此代码将遍历所有参数并输出那些不是有效目录的参数。但我不确定你现在要排序什么。
扩展 kirelagin 的建议:
for f in "$@"; do
if [ ! -d "$f" ]; then
echo "Not a dir: $f" >&2
else
echo "$f"
fi
done | sort
这会将所有非目录参数回显到stderr
并打印上的排序目录列表stdout
。