윈도우 7 CMD
다음 명령을 사용하여 파일 목록을 검색할 수 있습니다 dir /b | find "TENDER_NUM 2"
. find에서 반환된 모든 파일을 다른 폴더에 복사하려고 합니다.
난 노력 했어:
for /r %x in (dir /b | findstr "TENDER_NUM 2") do copy "%x" dir_to_copy\
작동하지 않았습니다.
편집 1: 오류 메시지 unexpected |
는 다음에서 오는 것으로 가정합니다.dir/b | Findstr
편집 2: 예, dir_to_copy\가 존재합니다.
답변1
예상치 못한 오류 메시지가 표시됩니다.|
for /r %x in (dir /b | findstr "TENDER_NUM 2") do copy "%x" dir_to_copy\
위 명령에는 여러 오류가 있습니다.
|
다음을 사용하여 특수 문자를 이스케이프해야 합니다^
.^|
dir /b | findstr "TENDER_NUM 2"
작은따옴표로 묶어야 합니다'
.'dir /b ^| findstr "TENDER_NUM 2"'
for /f
다음 대신 사용해야 합니다for /r
./f에 대해-다른 명령의 결과에 대한 루프 명령.
/r에 대해- 파일을 반복합니다(반복 하위 폴더).
쉘 에서 다음 명령을 사용하십시오 cmd
.
for /f %x in ('dir /b ^| findstr "TENDER_NUM 2"') do copy "%x" dir_to_copy\
배치 파일에서( %
로 대체 %%
):
for /f %%x in ('dir /b ^| findstr "TENDER_NUM 2"') do copy "%%x" dir_to_copy\
추가 자료
- Windows CMD 명령줄의 AZ 인덱스- Windows cmd 라인과 관련된 모든 것에 대한 훌륭한 참고 자료입니다.
- /f에 대해- 다른 명령의 결과에 대해 명령을 반복합니다.
- /r에 대해- 파일을 반복합니다(반복 하위 폴더).
- 통사론- 이스케이프 문자, 구분 기호 및 따옴표.