터미널 명령의 쉘 스크립트 버전 생성

터미널 명령의 쉘 스크립트 버전 생성

저는 방금 Linux 터미널의 기본 사항을 배우기 시작했고 터미널 명령을 쉘 스크립트로 변환하는 것에 대해 약간 혼란스러워합니다. Linux 터미널에서 스크립트 파일을 생성하고 다음 코드의 셸 스크립트 버전을 생성하려면 어떻게 해야 합니까?

curl -O https://people.sc.fsu.edu/~jburkardt/data/csv/cities.csv
head -n 12 cities.csv

답변1

텍스트 편집기를 사용하여 스크립트 만들기

스크립트는 텍스트 파일에 저장됩니다. 예를 들어 gedit다음과 같이 텍스트 편집기에서 만들 수 있습니다 nano.

$ nano yourscript.sh

일반 파일 이름 및파일 확장자가 특히 중요합니다. 스크립트 파일에서 다음을 수행해야 합니다.인터프리터 실행 파일을 선언하여 실행합니다(shebang).. 그런 다음 코드를 추가하세요. 에 스크립트를 저장하려면 +를 nano누른 다음 입력 하고 을 클릭합니다 .CtrlXyEnter

스크립트를 작성하세요

스크립트에 인수를 전달하는 경우 코드에서 숫자로 해당 인수를 참조할 수 있습니다(전달된 첫 번째 인수는 $1, 두 번째 인수는 $2등). $0스크립트 자체의 이름입니다.

기본 원칙으로는,변수 주위에는 항상 큰따옴표를 사용하십시오..

코드를 예로 들면 스크립트는 다음과 같습니다.

#! /usr/bin/bash
curl -O "$1"
head -n 12 cities.csv

뒤에 공간이 있을 수 있어요#!, 하지만 꼭 필요한 것은 아닙니다. 대부분의 경우 $0터미널에서 변수를 확인할 수 있습니다.쉘 실행 파일은 터미널의 명령을 해석합니다.:

$ type $0
bash is /usr/bin/bash

코드 개선

파일의 처음 12줄만 다운로드하면 된다고 가정하면 다음과 같이 할 수 있습니다.다운로드한 파일 저장 건너뛰기디스크에 그리고다음 명령으로 파이프하십시오.:

#! /usr/bin/bash
curl -s "$1" | head -n 12

보너스로 스크립트에서 파일 이름을 생략할 수 있습니다.

스크립트 실행

스크립트를 로 저장했다고 가정하고 yourscript.sh먼저 실행할 권한을 추가하세요.

$ chmod +x yourscript.sh

그런 다음 실행하려면 경로를 지정하고 매개변수를 제공해야 합니다. 현재 디렉터리에 있는 경우 앞에 다음을 추가하여 경로를 지정할 수 있습니다 ./.

$ ./yourscript.sh 'https://people.sc.fsu.edu/~jburkardt/data/csv/cities.csv'

답변2

프롬프트에 하나씩 입력하는 모든 명령은 간단히 스크립트 파일에 넣어 한 번만 실행할 수 있습니다.

  1. 유일한 요구 사항은 파일 시작 부분에 있어야 하는 해석기 줄입니다.

      #!/bin/sh
    

    #!/bin/bashbash( ) 또는 zsh( #!/bin/zsh) 와 같은 다른 스크립트를 스크립팅할 수 있습니다.

  2. 실행하여 스크립트를 실행 가능하게 만듭니다 chmod +x scriptFile.sh(스크립트 파일임을 나타내는 sh 확장자를 사용하는 것이 좋습니다).

  3. 다음을 통해 스크립트를 실행하세요.

    ./scriptFile.sh

scriptFile.sh선택 사항: PATH 변수에 디렉터리 경로를 추가하면 다른 쉘 명령과 마찬가지로 호출하여 모든 디렉터리에서 스크립트를 실행할 수 있습니다 ls.cat

관련 정보