作者LPH66 (かつて交わした约束)
看板EzHotKey
标题Re: [批次] 设定变数的批次档?
时间Sun Dec 17 04:23:40 2017
※ 引述《sanbis (方正)》之铭言:
: 想使用 rclone 来检查 google drive 资料夹中档案的数量
: 然後输入到 txt 档案中
: 而 cmd 下指令目前如下
: 先记录要执行的指令
: 然後执行指令并将结果记录下来
: echo rclone size GD1:/备份/xxxxxxx >> size.txt
: rclone size GD1:/备份/xxxxxxx >> size.txt
: 目前确定只有资料夹名称(红色)会有变动
: 名称非固定
: 但是可以先列出清单
: 像这种情况下不知道能不能写成批次档
: 根据清单逐条载入资料夹名称来执行命令?
for /f 可以达成你要的功能; 以下截取自 for /? 的说明
====
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]
或,如果使用 usebackq 选项:
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ('string') DO command [command-parameters]
FOR /F ["options"] %variable IN (`command`) DO command [command-parameters]
file-set 可以是一或多个档案名称。继续进行 file-set 中的下个
档案之前,都已开启、读取及处理过每个档案。处理程序包括读取
档案、将它分割成独立的文字行,然後将每一行剖析成零或多个语
法。使用已设成找到之语法字串的变数值,呼叫 For 回圈的内容。
依照预设,/F 会从每个档案的每一行传送第一个以空格分隔的权
杖。空白行会被略过。
====
因为你是资料已经在清单档案里了, 所以直接使用无引号的版本即可
如说明所说, 它是逐行读取资料并设进变数里
因此以你的例子一个可能的写法是:
for /f %f in (listfile.txt) do (
echo rclone size GD1:/备份/%f >> size.txt
rclone size GD1:/备份/%f >> size.txt
)
--
Ace Snake Santa Clover Junpei June Seven Lotus 9th man cabin kitchen casino
shower operating room laboratory T H E chart captain quarter confinement
torture room steam engine room cargo chapel library study incinerator Gigantic
Q director office security N O N A R Y archives control laboratory
pec treatment garden pantry gaulem bay rec room crew quarters infirmary lounge
elevator Tenmyouji Quark Dio G A M E S Luna Phi Sigma Alice Clover K
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.195.9.46
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/EzHotKey/M.1513455823.A.C4E.html