상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - xargs를 사용하여 다른 명령의 출력을 인수로 어떻게 전달하나요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
`xargs`는 표준 입력으로 받은 데이터를 다른 명령의 인수로 전달하는 유용한 도구입니다. 이 도구를 사용하면 파이프(`|`)를 통해 값을 넘기고, 이러한 값을 해당 명령어의 인수로 효율적으로 변환할 수 있습니다. 다음은 `xargs`의 기본적인 usage와 몇 가지 예제입니다. 기본 사용법 ```bash command | xargs [options] command_to_execute ``` 예제 1. 파일 목록을 삭제하기 : 특정 디렉토리 내에서 `.tmp` 확장자를 가진 파일을 찾아 삭제할 때, `find`와 `xargs`를 조합할 수 있습니다. ```bash find . -name "*.tmp" | xargs rm ``` 위 명령은 현재 디렉토리와 하위 디렉토리에서 모든 `.tmp` 파일을 찾아서 `rm` 명령을 사용하여 삭제합니다. 2. 이름 바꾸기 : 파일 이름을 변경하는 경우, `echo`와 `xargs`를 사용할 수 있습니다. ```bash echo -e "file1.txt\nfile2.txt" | xargs -I {} mv {} {}.bak ``` 이 예제는 `file1.txt`와 `file2.txt`를 각각 `file1.txt.bak`와 `file2.txt.bak`로 이름을 바꿉니다. 3. 사용자 지정 구분 기호 : 기본적으로 `xargs`는 공백과 새로운 줄을 구분 기호로 사용하지만, `-d` 옵션을 사용하면 다른 구분 기호도 사용할 수 있습니다. ```bash echo "file1,file2,file3" | xargs -d "," -n 1 echo ``` 위 명령은 `file1`, `file2`, `file3`을 각각 별도의 줄로 출력합니다. 4. 병렬 실행 : `-P` <a href='https://sangseek.com/sangseeks/플래그/ko'>플래그</a>를 사용하여 명령을 병렬로 실행할 수 있습니다. 이는 시간이 오래 걸리는 명령을 더 빠르게 처리할 수 있도록 해 줍니다. ```bash find . -name "*.jpg" | xargs -n 1 -P 4 convert {} -resize 800x800 resized_{} ``` 이 예제는 찾아낸 `.jpg` 파일들을 800x800으로 리사이즈하는 `convert` 명령을 병렬로 4개 프로세스에서 실행합니다. 주의사항 - `xargs`는 입력이 너무 길면 에러가 발생할 수 있습니다. 이 경우 `-0` 옵션을 사용하여 null 문자를 구분 기호로 사용할 수 있습니다. - `find`와 함께 사용할 때는 `-print0` 옵션도 추가하여 파일 이름에 공백이 포함된 경우에도 안전하게 처리할 수 있습니다. ```bash find . -name "*.tmp" -print0 | xargs -0 rm ``` 이런 방식으로 `xargs`를 활용하면 다양한 명령에 대한 입력을 보다 효율적으로 처리할 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기