如何使用批处理文件中的“FOR”命令复制所选文本文件?

时间:2015-10-26 14:03:37

标签: batch-file for-loop copy

大家好,你在主题中读到如何将选定的文件复制到另一个位置。 我在这里使用我自己的立陶宛语,如果有人发现很难理解告诉我生病翻译它。现在它只创建新文件时,我启动“name.bat test.txt”它不是完整的代码,因为有很多复制粘贴相同的任何想法,因为我真的很糟糕的.bat文件。 我需要使用命令“FOR”

:DEKUPAZAS
echo Pasirinkote Dekupazo kursus
echo Bendrine informacija apie si bureli
echo.
type dekupazas.txt
echo.
set U=dekupazas.txt
echo Ar norite:
echo 1) Irasyti sia informacija i naujai sukurta faila?
echo 2) Grizti kitu bureliu pasirinkimu?
echo 3) Grizti prie srities pasirinkimo?
choice /C 123 /N /M "Iveskite savo pasirinkima(1,2 arba 3): "
if errorlevel 255 goto KLAIDA
if errorlevel 3 goto SRITIS
if errorlevel 2 goto KT
if errorlevel 1 goto IRASYMAS
goto PRADZIA

:IRASYMAS
echo Pasirinkote irasyti sia informacija i jusu sukurto pavadinimo faila
echo Failas bus perkeltas i aplanka Pasirinkimas
if exist Pasirinkimas rd /S /Q Pasirinkimas
md Pasirinkimas
for %%U in (U) do dir %%U >>%1
move %1 Pasirinkimas >nul
goto PAB

1 个答案:

答案 0 :(得分:0)

FOR /F语句读取文件的每一行,然后将其捕获的目录列表作为.bat脚本的第一个参数。

我还冒昧地为新目录名创建一个变量,这样就不需要多次硬编码了。 "硬编码"是两个四个字母的单词。

echo Pasirinkote irasyti sia informacija i jusu sukurto pavadinimo faila
echo Failas bus perkeltas i aplanka Pasirinkimas
SET NEW_DIR=Pasirinkimas

if exist "%NEW_DIR%" (RMDIR /S /Q "%NEW_DIR%")
MKDIR "%NEW_DIR%"

for /F %%a in (%U%) DO (DIR "%%~a" >>"%~1")
move "%~1" "%NEW_DIR%" >nul
goto PAB