Shell获取某目录下所有文件夹的名称

2024-11-07 20:40:53
推荐回答(3个)
回答1:

方法有三,如下:

#!/bin/bash

#方法一 

dir=$(ls -l D:/temp/ |awk '/^d/ {print $NF}')

for i in $dir

do

echo $i

done   

#######

#方法二

for dir in $(ls D:/tmep/)

do

[ -d $dir ] && echo $dir

done        

##方法三

ls -l D:/temp/ |awk '/^d/ {print $NF}'   

## 其实同方法一,直接就可以显示不用for循环

回答2:

#!/bin/bash
#方法一 
dir=$(ls -l D:/temp/ |awk '/^d/ {print $NF}')
for i in $dir
do
    echo $i
done   
#######
#方法二
for dir in $(ls D:/tmep/)
do
    [ -d $dir ] && echo $dir
done        
##方法三

ls -l D:/temp/ |awk '/^d/ {print $NF}'   ## 其实同方法一,直接就可以显示不用for循环

回答3:

dir_name="/home/temp"
all=`ls ${dir_name}`
for i in $all
do
if [ -d $i ]
then
echo "=====>[$i]"
fi
done