한 명령에서 다음 명령으로 인수 전달

Morrison

손으로 실행하는 두 개의 개별 명령을 단일 bash 스크립트로 통합하는 스크립트를 작성하려고합니다.

첫 번째 명령은 특정 이름과 크기를 가진 파일에 대한 간단한 찾기입니다.

find /some/path -type f -name file.pl -size +10M

이렇게하면 일치하는 여러 파일과 전체 경로가 생성됩니다. 그런 다음 이러한 경로를 다음 스크립트에 대한 인수로 for 루프에 직접 복사합니다.

for path in /some/path/1/file.pl /some/path/2/file.pl /some/path/3/file.pl ; do perl /my/script.pl $path ; done

이것을 단일 쉘 스크립트로 가져 오는 것은 쉽지만 어려움을 찾는 것 같습니다.

스테판 샤젤 라스

이것이 -exec술어의 용도입니다.

find /some/path -type f -name file.pl -size +10M -exec perl /my/script.pl {} \;

당신이 원하는 경우 쉘이 의 출력에 따라 명령을 실행 find, 그 다음은해야 할 것이다 bash/ zsh당신이 신뢰할 수 있도록하려면 특정를 :

  • zsh:

    IFS=$'\0'
    for f ($(find /some/path -type f -name file.pl -size +10M -print0)) {
      /my/script.pl $f
    }
    

    에서는 zsh간단하게 다음을 수행 할 수 있습니다.

    for f (./**/file.pl(.LM+10)) /my/script.pl $f
    
  • bash/zsh

    while IFS= read -rd '' -u3 file; do
      /my/script.pl "$file"
    done 3< <(find /some/path -type f -name file.pl -size +10M -print0)
    

bash다른 POSIX 셸 에서 수행하는 작업은 피하십시오.

for file in $(find...)

또는 적어도 필드 구분자를 줄 바꿈으로 고정하고 globbing을 비활성화하여 덜 나쁘게 만드십시오.

IFS='
'; set -f; for file in $(find...)

(개행 문자를 포함하는 파일 경로에 대해서는 여전히 실패합니다).

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

명령 줄 결과를 다음 명령에 인수로 전달

분류에서Dev

한 명령을 터미널의 다른 명령으로 전달

분류에서Dev

한 명령의 출력을 다른 명령으로 전달

분류에서Dev

이전 명령으로 "스크롤"한 후 BASH를 사용하면 어떻게이 역사에서 다음 명령으로 넘어갈 수 있습니까?

분류에서Dev

연결할 명령 줄에 인수를 전달하고 연결이 설정된 후 동일한 명령에서 다른 인수를 전달합니다.

분류에서Dev

한 명령에서 다음 명령으로 동일한 경로를 어떻게 참조 할 수 있습니까?

분류에서Dev

한 명령의 출력을 다른 명령의 입력으로 전달

분류에서Dev

Erlang에서 명령 줄 인수로 음수를 전달하는 방법

분류에서Dev

이전 명령의 출력을 다음 명령으로 전달

분류에서Dev

터미널 명령을 다른 명령에 인수로 전달하는 방법

분류에서Dev

스크립트 인수를 다른 명령으로 "전달"하는 가장 간단한 방법

분류에서Dev

명령 줄 도구 Newman을 사용하여 한 우편 배달부 컬렉션에서 다른 컬렉션으로 변수 전달

분류에서Dev

한 명령의 출력을 명령 줄 인수로 다른 명령 줄 인수로 전달하는 방법은 무엇입니까?

분류에서Dev

bash 파이프에서 이전 명령의 출력을 다음 명령에 대한 변수로 가져옵니다 (예 : if 문).

분류에서Dev

한 시스템에서 다른 시스템으로 명령 내역을 전송할 수 있습니까?

분류에서Dev

이전 명령의 출력을 다음으로 인수로 전달하는 방법

분류에서Dev

Mac OS X-공백이있는 경로 이름을 bashscript에 인수로 전달한 다음 터미널 열기 명령을 실행합니다.

분류에서Dev

명령 줄 인수가 유효한 순서로 전달되었는지 확인

분류에서Dev

$ _. SamAccountName에서 파이프 명령으로 변수 전달

분류에서Dev

인수를 명령에 전달하기 전에 다시 작성

분류에서Dev

.env에 의한 Docker-Compose 전달 명령 인수

분류에서Dev

한 줄의 여러 명령에 인수 전달

분류에서Dev

Bash : 선택적으로 명령에 인수 전달

분류에서Dev

쉘 명령에 대한 인수로 별칭을 전달하는 방법

분류에서Dev

명령 줄에서 개체로 값을 전달할 수 없음-Powershell Paramter

분류에서Dev

한 함수에서 명령으로 인수 프록시

분류에서Dev

Linux 명령으로 IP 생성시 SSH를 통해 서버에 로그인 한 후 명령을 실행할 수 없음

분류에서Dev

Makefile에서 쉘 스크립트로 인수를 전달하는 "명령을 찾을 수 없음"

분류에서Dev

다른 명령에서 인수를 전달하는 방법이 있습니까?

Related 관련 기사

  1. 1

    명령 줄 결과를 다음 명령에 인수로 전달

  2. 2

    한 명령을 터미널의 다른 명령으로 전달

  3. 3

    한 명령의 출력을 다른 명령으로 전달

  4. 4

    이전 명령으로 "스크롤"한 후 BASH를 사용하면 어떻게이 역사에서 다음 명령으로 넘어갈 수 있습니까?

  5. 5

    연결할 명령 줄에 인수를 전달하고 연결이 설정된 후 동일한 명령에서 다른 인수를 전달합니다.

  6. 6

    한 명령에서 다음 명령으로 동일한 경로를 어떻게 참조 할 수 있습니까?

  7. 7

    한 명령의 출력을 다른 명령의 입력으로 전달

  8. 8

    Erlang에서 명령 줄 인수로 음수를 전달하는 방법

  9. 9

    이전 명령의 출력을 다음 명령으로 전달

  10. 10

    터미널 명령을 다른 명령에 인수로 전달하는 방법

  11. 11

    스크립트 인수를 다른 명령으로 "전달"하는 가장 간단한 방법

  12. 12

    명령 줄 도구 Newman을 사용하여 한 우편 배달부 컬렉션에서 다른 컬렉션으로 변수 전달

  13. 13

    한 명령의 출력을 명령 줄 인수로 다른 명령 줄 인수로 전달하는 방법은 무엇입니까?

  14. 14

    bash 파이프에서 이전 명령의 출력을 다음 명령에 대한 변수로 가져옵니다 (예 : if 문).

  15. 15

    한 시스템에서 다른 시스템으로 명령 내역을 전송할 수 있습니까?

  16. 16

    이전 명령의 출력을 다음으로 인수로 전달하는 방법

  17. 17

    Mac OS X-공백이있는 경로 이름을 bashscript에 인수로 전달한 다음 터미널 열기 명령을 실행합니다.

  18. 18

    명령 줄 인수가 유효한 순서로 전달되었는지 확인

  19. 19

    $ _. SamAccountName에서 파이프 명령으로 변수 전달

  20. 20

    인수를 명령에 전달하기 전에 다시 작성

  21. 21

    .env에 의한 Docker-Compose 전달 명령 인수

  22. 22

    한 줄의 여러 명령에 인수 전달

  23. 23

    Bash : 선택적으로 명령에 인수 전달

  24. 24

    쉘 명령에 대한 인수로 별칭을 전달하는 방법

  25. 25

    명령 줄에서 개체로 값을 전달할 수 없음-Powershell Paramter

  26. 26

    한 함수에서 명령으로 인수 프록시

  27. 27

    Linux 명령으로 IP 생성시 SSH를 통해 서버에 로그인 한 후 명령을 실행할 수 없음

  28. 28

    Makefile에서 쉘 스크립트로 인수를 전달하는 "명령을 찾을 수 없음"

  29. 29

    다른 명령에서 인수를 전달하는 방법이 있습니까?

뜨겁다태그

보관