반응형
부제: 파이프로 들어온 목록을 다음 명령의 인자로 넘기기
find . -name "*.log" | xargs rm # 찾은 파일을 rm 인자로
ls *.txt | xargs -n1 gzip # 하나씩 처리
$ echo a b | xargs -n1 echo item:
item: a
item: b어떤 명령은 표준입력이 아니라 인자로 값을 받는다(rm·cp 등).
xargs는 파이프로 들어온 목록을 그 인자로 바꿔 준다.-n1은 하나씩, -I{}는 자리표시자, -0은 공백·개행이 든 파일명을 안전하게 다룬다.
이렇게도 쓴다
파일명에 공백·개행이 있어도 안전하게 넘긴다(find -print0 조합).
find . -name "*.log" -print0 | xargs -0 rm
자리표시자로 각 항목을 원하는 위치에 끼운다.
ls *.jpg | xargs -I{} cp {} backup/
목록을 한 줄에 하나씩 처리한다.
cat urls.txt | xargs -n1 curl -O
여러 개를 한 번에 넘겨 명령 호출 횟수를 줄인다.
find . -name "*.o" | xargs rm
여러 개를 병렬로 처리한다(-P).
ls *.png | xargs -P4 -I{} convert {} {}.webp반응형
'명령어 > Linux' 카테고리의 다른 글
| [리눅스] gzip 압축 해제 zcat 로그 (0) | 2026.07.09 |
|---|---|
| [리눅스] tar 압축 묶기 풀기 tar.gz (0) | 2026.07.09 |
| [리눅스] find 파일 찾기 이름 크기 수정시간 (0) | 2026.07.09 |
| [리눅스] tee 화면 출력 파일 저장 동시에 (0) | 2026.07.09 |
| [리눅스] awk 열 추출 집계 조건 필터 (0) | 2026.07.09 |