当我在命令窗口中使用 Windowsftp
命令时(我认为是 DOS)ftp
命令,有没有办法计算远程目录中的文件数量?这样我就可以检查我是否已通过 ftp 传输了所有文件。我只能使用 Windows 7 内置命令,无法使用其他程序。
答案1
- 保存远程文件列表到文件;
- 计算文件中的行数。
@echo off
echo open ftp.example.com>ftp.txt
echo user>>ftp.txt
echo password>>ftp.txt
echo ls /remote/path files.txt>>ftp.txt
echo bye>>ftp.txt
ftp -s:ftp.txt
set /a LINES=0
for /f %%j in ('type files.txt^|find "" /v /c ') do set /a LINES=%%j
del files.txt
del ftp.txt
echo Number of files: %LINES%
正如其他人所评论的那样,使用 PowerShell 脚本会更加优雅和可靠。