shell获取目录下所有文件夹的名称并输出

获取指定目录/usr/下所有文件夹的名称并输出:

shell代码:

 1 #!/bin/bash
 2 #方法一 
 3 dir=$(ls -l /usr/ |awk '/^d/ {print $NF}')
 4 for i in $dir
 5 do
 6     echo $i
 7 done   
 8 #######
 9 #方法二
10 for dir in $(ls /usr/)
11 do
12     [ -d $dir ] && echo $dir
13 done        
14 ##方法三
15  
16 ls -l /usr/ |awk '/^d/ {print $NF}'   ## 其实同方法一,直接就可以显示不用for循环

运行shell后会输出/usr/目录下所有的文件夹的名字:

 1 [root@localhost ~]# ./foler.sh
 2 bin
 3 etc
 4 games
 5 include
 6 lib
 7 lib64
 8 libexec
 9 local
10 sbin
11 share
12 src

作者:zqifa

出处:https://www.l1mn.com

  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 实现获取每个文件夹下文件个数的方法,可以使用批处理(.bat)脚本来实现。下面是一种实现方法: @echo off setlocal enabledelayedexpansion set "folderPath=C:\Path\to\Folder" // 文件夹路径,根据实际情况进行修改 for /r "%folderPath%" %%G in (*) do ( set /a "count+=1" ) echo 文件夹:%folderPath% 中的文件个数为:%count% 将上述代码保存为扩展名为.bat的文件,将"folderPath"替换为实际的文件夹路径。然后运行这个脚本,它将输出指定文件夹中的文件个数。 这个脚本通过使用“for /r”命令递归遍历指定的文件夹及其子文件夹中的所有文件,并使用"set /a"命令对计算器进行递增操作,以统计文件个数。最后,使用"echo"命令将统计结果输出到屏幕上。 注意:这个脚本将只统计文件数量,不包括文件夹的数量。如果需要同时统计文件夹和文件的数量,可以将脚本进行修改。 ### 回答2: 可以使用以下方法来获取每个文件夹下的文件个数: 1. 首先,创建一个批处理文件(以.bat为后缀),比如"count_files.bat"。 2. 在批处理文件中输入以下代码: ```shell @echo off setlocal enabledelayedexpansion for /d %%i in (*) do ( set count=0 for /r "%%i" %%f in (*) do ( set /a count+=1 ) echo 文件夹%%i下的文件个数为:!count! ) pause ``` 3. 保存并关闭批处理文件。 4. 在需要统计的文件夹中运行该批处理文件。 5. 执行文件后,将会逐个显示每个文件夹下的文件个数。 该批处理文件使用了两个内嵌的for循环。外层循环遍历当前目录的所有文件夹并赋值给变量%%i,内层循环用于统计指定文件夹下的文件个数。每次循环都将文件计数器(count)增加1,并在循环结束后输出结果。 注意:由于批处理是通过命令行界面运行的,因此在运行批处理文件后,命令行界面会在输出完结果后暂停,你可以按任意键继续执行或者直接关闭窗口。 ### 回答3: 可以使用以下的批处理脚本来获取每个文件夹下的文件个数: ``` @echo off setlocal enabledelayedexpansion set "folderPath=C:\目标文件夹的路径" for /d %%a in ("%folderPath%\*") do ( set "folderName=%%~nxa" set "fileCount=0" for %%b in ("%%a\*") do ( set /a "fileCount+=1" ) echo 文件夹 "!folderName!" 中的文件个数为: !fileCount! ) endlocal ``` 请将 `C:\目标文件夹的路径` 替换为你想要获取文件个数的目标文件夹的实际路径,并保存脚本为以 `.bat` 结尾的文件,双击运行即可。 脚本中首先将 `folderPath` 设置为目标文件夹的路径。然后通过 `for /d` 循环获取目标文件夹下的子文件夹,将文件夹名称保存到变量 `folderName` 中。接着通过内嵌的 `for` 循环遍历文件夹中的文件,并使用 `set /a` 命令将文件个数累加到 `fileCount` 变量中。最后通过 `echo` 命令输出文件夹名称和对应的文件个数。 希望对你有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z_qifa

此处弱弱求打赏~~万一有好心人

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值