Batch file DOS批量创建多个目录下的文件夹
我目前正在学习DOS,并试图更好地组织一些客户端目录。我想在每个客户的文件夹下创建5个文件夹(2011、2012、2013、2014和2015),但我有很多客户,我想使用批处理命令来创建 下面是我现在的目录示例: C:\Clients\Name\ 以下是我想做的: C:\Clients\Name\2015 我有大约200个不同的客户机,因此单独创建这些客户机将是乏味和耗时的。是否有一种方法可以写入所有“名称”文件夹,即使它们都不同?尝试以下方法:Batch file DOS批量创建多个目录下的文件夹,batch-file,dos,Batch File,Dos,我目前正在学习DOS,并试图更好地组织一些客户端目录。我想在每个客户的文件夹下创建5个文件夹(2011、2012、2013、2014和2015),但我有很多客户,我想使用批处理命令来创建 下面是我现在的目录示例: C:\Clients\Name\ 以下是我想做的: C:\Clients\Name\2015 我有大约200个不同的客户机,因此单独创建这些客户机将是乏味和耗时的。是否有一种方法可以写入所有“名称”文件夹,即使它们都不同?尝试以下方法: pushd C:\Clients for /d
pushd C:\Clients
for /d %%d in (*) do (
for %%i in (2011 2012 2013 2014 2015) do mkdir %%d\%%i
)
popd
下面是一个批处理文件,可以实现以下功能: 您可以通过两种方式运行它:
- 将文件夹(例如C:\Clients)作为参数传递
- 转到文件夹(
)并从那里运行它,不带任何参数cd C:\Clients
“我正在学习DOS”哇,这句话让我产生了一些强烈的怀旧情绪。因此,如果我是对的,您正在寻找一个命令,将一个文件同时复制到多个目录,还是要创建目录?除此之外,你是在运行Windows 95还是安装了Powershell的Windows版本?你真的在学习“DOS”吗?还是指Windows中的命令行?因为这是完全不同的qbasic和这些Dos?然后让它为您创建批处理文件。客户机名称会是什么样子?实名还是连续数字?我想它们已经存在了?这在“DOS”中不起作用(尽管我很确定Jox指的是Windows命令行,而不是“DOS”)
@echo off
setlocal enableextensions
if "" neq "%~1" (
if exist "%~1\" (
set WORK_DIR="%~1"
) else (
set WORK_DIR="%CD:"=%"
)
) else (
set WORK_DIR="%CD:"=%"
)
for /f "tokens=*" %%f in ('dir /b /a:d %WORK_DIR%') do (
for %%g in (2011 2012 2013 2014 2015) do (
mkdir "%WORK_DIR:"=%\%%f\%%g"
)
)