xargs
명령어는 표준 입력으로부터 데이터를 읽고, 이를 인수로 사용하여 다른 명령어를 실행하는 데 사용됩니다. 주로 파이프와 함께 사용되어, 이전 명령의 출력을 다음 명령의 입력으로 전달하는 역할을 합니다.
기본 구문은 다음과 같습니다:
xargs [옵션] [인수]
-n N
: 한 번에 N개의 인수만 사용하여 명령어를 실행합니다.-d DELIM
: 입력 구분자로 DELIM을 사용합니다.-0
: 널 문자로 구분된 입력을 처리합니다. 주로 find
와 함께 사용됩니다.-p
: 각 명령어 실행 전에 사용자에게 확인을 요청합니다.find . -name "*.tmp" | xargs rm
이 명령은 현재 디렉토리 및 하위 디렉토리에서 .tmp
파일을 찾아 삭제합니다.
cat filelist.txt | xargs grep "검색어"
filelist.txt
에 나열된 파일들에서 “검색어”를 검색합니다.
echo "a b c d e" | xargs -n 2 echo
이 명령은 두 개의 인수를 한 번에 사용하여 echo
명령을 실행합니다. 출력은 다음과 같습니다:
a b
c d
e
find . -name "*.log" -print0 | xargs -0 rm
이 명령은 .log
파일을 찾아 삭제하는데, 파일 이름에 공백이 포함된 경우에도 안전하게 처리합니다.
xargs
를 사용할 때는 항상 입력이 예상대로 처리되는지 확인하세요. -p
옵션을 사용하여 각 명령어 실행 전에 확인할 수 있습니다.-n
옵션을 사용하여 한 번에 처리하는 인수의 수를 조절하면 메모리 사용을 최적화할 수 있습니다.-0
옵션과 함께 find
명령어를 사용할 때는 파일 이름에 공백이나 특수 문자가 포함된 경우에도 안전하게 처리할 수 있습니다.