关于bash:签入目录中的元素是目录或文件

Check in a element in a directory is a directory or file

本问题已经有最佳答案,请猛点这里访问。

我有一个包含单个项目的目录。如何检查该项是目录还是文件?


1
stat -c %F yourItem

或者用file检查:file yourItem

它将告诉您它是目录还是文件。


你可以这样做。

1
2
3
4
5
6
7
8
9
10
#!/bin/bash

if [ -d"$1" ]; then
    echo"$1 is a directory";
elif [ -f"$1" ]; then
    echo"$1 is a file";
else
    echo"$1 is not valid";
     exit 1
fi

用途:

1
./test.sh /path/to/item


1
ll test/ | egrep"^d" | wc -l

如果目录"test"中的项是目录,则返回1;否则返回0。