다른 쉘 스크립트를 검색하고 실행하는 방법은 무엇입니까?

다른 쉘 스크립트를 검색하고 실행하는 방법은 무엇입니까?

이미 존재하는 다른 쉘 스크립트를 호출하여 정상적으로 실행하려는 아래와 같은 쉘 스크립트가 있습니다. 예를 들어, 누군가가 다음 메뉴에서 "s"를 명령하면 이 스크립트가 내 모든 디렉터리에서 "isearch" 파일을 검색하고 터미널에서 실행하여 isearch에서 작업할 수 있기를 원합니다. 기존 파일을 검색하고 실행하는 정확한 코드는 무엇입니까?

나는 이것을 시도했지만 작동하지 않습니다 -

find / -type f -iname "isearch" -exec {} \

다음은 내 컴퓨터에서 실행되는 스크립트에 적용되지만, 이러한 파일이 모두 있지만 다른 폴더에 있을 수 있는 사람을 위해 스크립트를 실행하려면 어떻게 해야 합니까?

/home/user/eecs2031as2/isearch

이것은 다른 스크립트를 호출할 수 있는 메뉴가 있는 스크립트입니다.

 #!/bin/sh
    echo "==============  MENU  =============="
    echo "s: Search for a word"
    echo "c: Count lines, words, characters"
    echo "r: Clear the screen"
    echo "q: Quit the program"
    echo "===================================="
    echo " "
    echo -n "Enter command: " 
    read usercommand

미리 감사드립니다.

답변1

동일한 프로그램에 코드를 유지하고 아래와 같은 함수와 사례를 사용하여 해당 코드로 점프해 보세요.

echo -n "Enter command: " 
read userCommand
case "$userCommand" in
[Ss] )
    echo ''
    searchWord

function searchWord {
    #Enter code here
}

그러나 별도의 파일을 실행하려는 경우 살펴볼 수 있는 또 다른 명령은 "grep"을 사용하고 스크립트에서 출력을 가져오는 것입니다.

파일 헤더에 마법 값을 저장하는 경우 명령을 사용하십시오.

x="$(find | grep -rl "MagicValue")"
./$x

관련 정보