运行shell后会输出/usr/目录下所有的文件夹的名字:
#!/bin/bash
#方法一
dir=$(ls -l /usr/ |awk '/^d/ {print $NF}')
for i in $dir
do
echo $i
done
#方法二
for dir in $(ls /usr/)
do
[ -d$dir ] && echo $dir
done
##方法三
ls -l /usr/ |awk '/^d/ {print $NF}' ## 其实同方法一,直接就可以显示不用for循环
同理( print $NF 最后一列)
ls -l /opt/StarRocks-2.3/ | awk '/^d/ {print $NF}' -- 这里只会打印出来/Users/oker/目录下的子目录
ls -l /opt/StarRocks-2.3/ | awk '/^-/ {print $NF}' -- 这里只会打印出来/Users/oker/目录下的文件
如下: