명령을 실행하고 싶습니다. 명령을 abc라고 부르고 현재 폴더의 각 파일 이름을 매개변수로 추가하겠습니다. C Shell(또는 다른 스크립팅 언어)에서 이 작업을 어떻게 수행할 수 있습니까?
답변1
csh
또는 를 사용하면 tcsh
현재 디렉터리의 모든 파일과 디렉터리를 반복합니다. $i
일부 이름에 공백이 있는 경우를 대비하여 변수 대체 주위에 따옴표를 사용했습니다 .
foreach i (*)
abc "$i"
end
디렉터리가 아닌 파일만 가져오려면 -f
테스트를 사용하세요. 여기서는 C 쉘의 짧은 형식 명령문을 사용했습니다 if
.
foreach i (*)
if (-f "$i") abc "$i"
end
답변2
찾다xargs. 귀하의 쉘이 나와 유사한 것이라면 다음이 잘 작동할 것입니다:
find . -type f -maxdepth 1 | xargs abc
파일 이름의 공백이 걱정된다면 아래 Daniel Andersson의 설명을 참조하세요.