.bat文件中set和setlocal的用法

        set功能很强大的,如下:

@echo off
set xxx = "hello world"
set xyz = "batch"
set x

set xxx =
set x

set xyz 
set x
       其中set xxx = "hello world" 是定义变量,并把其值设定为"hello world". set x 是查询所有以x开头的变量,set xxx = 表示删除xxx这个变量。(单独一个set的作用是查看所有的当前环境所有变量,自己试一下就知道了)


      我们来看一下set的一个典型用法:

@echo off
set /a sum = 0
echo sum is %sum%

set /a sum = sum + 1
echo sum is %sum%

set /a sum = sum + 1
echo sum is %sum%

set sum =

     千万要注意,/a不能少,否则结果错误。另外,用完sum后,记得要将sum删除。

     setlocal主要针对临时环境变量,不会影响到系统的变量环境设置,应与endlocal联用。


  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
### 回答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` 命令输出文件夹名称和对应的文件个数。 希望对你有所帮助!
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值