가 rjp2tif
명령을 반환하는 파일 경로에 표준 출력,그리고 당신을 통과하려면 출력으로 정기적인 CLI 인수하는 다른 명령에,당신은 당신에 관심이 있을 수 있습니다 xargs
명령입니다. 하지만 주는 일반적인 경우에,당신은 수중 일부 문제는 경우 파일 경로 공백이 포함되거나 그렇:
읽기 공간,탭,newline 고 파일의 끝으로 구분 인수 기준에서 입력 및 실행 지정된 유틸리티로 그들과 함께 인수를 사용합니다.
인수하는 일반적으로 오래의 목록은 파일명(에 의해 생성 ls
나 find
예를 들어)을 얻을 전달 xargs
를 통해 파이프입니다.
그래서 이 경우에는 가정하면,각각의 파일 경로를 단 한 번의 선(은 분명히 이 사건이 있는 경우에만 한 선반),사용할 수 있습니다 다음 NUL
기반 팁에 의존 tr
명령입니다.
여기에는 명령어 당신을 얻을:
rjp2tif /path/to/rjpeg | tr '\n' '\0' | xargs -0 open -a imagej
참고:GNU/리눅스 OS,당신 수 있도록 확인하시기 바랍에서 작동 하지 않 macOS?
FTR,아래의 포괄적인 쉘 코드를 수 있을 테스트하는 두 개의 다른 모드 xargs
:성 중 하나는 명령 당선 인수(-n1
다),또는 하나의 명령으로 모든 라인에서 인수 한 이동:
$ printf 'one \ntwo\nthree and four' | tr '\n' '\0' | xargs -0 -n1 \
bash -c 'printf "Run "; for a; do printf "\"$a\" "; done; echo' bash
Run "one "
Run "two"
Run "three and four"
$ printf 'one \ntwo\nthree and four' | tr '\n' '\0' | xargs -0 \
bash -c 'printf "Run "; for a; do printf "\"$a\" "; done; echo' bash
Run "one " "two" "three and four"
######################################
# or alternatively (with no for loop):
######################################
$ printf 'one \ntwo\nthree and four' | tr '\n' '\0' | xargs -0 -n1 \
bash -c 'printf "Run "; printf "\"%s\" " "$@"; echo' bash
Run "one "
Run "two"
Run "three and four"
$ printf 'one \ntwo\nthree and four' | tr '\n' '\0' | xargs -0 \
bash -c 'printf "Run "; printf "\"%s\" " "$@"; echo' bash
Run "one " "two" "three and four"
tr
명령을 위에는 작업에 macOS,감사합니다. 내가 찾는-t
옵션(trace)하기xargs
은 도움이 무엇을 보여줍xargs
지 않는 명령입니다. 는 경우에,여기 때path/to/tiff
전달된xargs
을 통해 파이프,xargs
명령을 다시 정렬open -a imagej path/to/tiff
. 매우 유용합니다.