내가 이 명령을 사용한다고 가정하면:
outputStuff.sh | awk -F"-" '{print $5"-"$6}' | xargs someTool (XARGS OUTPUT HERE) --someCommandLineSwitchHere
하지만 xargs 출력 후에 명령줄 스위치를 제공해야 합니까? 이 문제를 해결한 사람이 있나요?
답변1
따라서 이 플래그가 사용되지만 someTool
입력 파일 뒤에 와야 합니다... 서브셸을 사용하면 모든 종류의 유연성이 제공됩니다.
xargs sh -c 'someTool "$@" --someCommandLineSwitchHere' someTool
처리 후에 xargs
는 실제로 이렇게 됩니다.
xargs sh -c 'someTool "$@" --someCommandLineSwitchHere' someTool item1 item2 ... itemN
...작은따옴표로 묶인 문자열 뒤의 명령줄에 있는 모든 내용은 sh
(위치 인수)에 대한 입력 인수가 됩니다. 이는 일반적으로 방금 사용한 실행 명령이기 $0
때문에 시작됩니다 (여기에서는 무엇이든 허용되지만). 그 밖의 모든 것은 및 일반 위치 인수( 등 ) 로 구성됩니다.$0
someTool
xargs
$1
$2