[OSX] xargs 사용하기

find와 자주 함께 쓰이는 것으로 xargs가 있다. 그러나 생각보다 xargs에 대한 설명이 잘 없는데, 오늘같은 경우 mv 명령과 함께 쓰려니 도대체 어떻게 써야 할지 감이 오지 않았다. 그래서 조금 정리를 해보면:

find . -name "pattern" | xargs -I {} mv {} ./Destination

-I는 replacement로, 뒤에 나오는 mv {} ./Destination에서 {}를 앞의 파이프라인에서 가져온 각각의 줄로 변경한다.

find . -name "pattern" | xargs -I {} mv {} {}.bak

이건 find에서 찾은 파일 이름에 bak를 붙여서 변경한다.

find도 그렇고 xargs도 그렇고 옵션들이 조금씩 다 다르네…

댓글