Bash를 사용하면 전체 텍스트 문자열을 단일 변수에 매핑하여 사용 및 스크립트 작성을 단순화할 수 있습니다. 어떻게 작동하며 어떻게 사용할 수 있습니까? 알아봅시다.
변수란 무엇입니까?
변수는 다른 영숫자 값을 포함할 수 있는 기억하기 쉬운 이름입니다. 스크립트/코드를 다시 작성할 필요 없이 동일한 기능을 다른 값에 적용할 수 있기 때문에 유용합니다. 또한 개별 값을 처리하는 대신 모든 값에 동일한 이름을 사용할 수 있으므로 스크립트/코드를 쉽게 작성할 수 있습니다.
실시간 변수
Bash에서는 변수를 사용할 수 있습니다. 즉석에서 변수를 생성하고 현재 Bash 세션에서 재사용할 수 있습니다. 그들은 다양한 방법으로 Bash를 사용하는 데 도움을 줄 수 있으며 현재 세션이 끝나면 사라집니다.
예를 들어 여러 사이트를 방문한다고 가정해 보겠습니다. 조사를 하거나 데이터를 스크랩할 수 있습니다. 다음 변수를 생성할 수 있습니다.
sitea=https://www.maketecheasier.com
그런 다음 Firefox로 저희 사이트를 방문하려면 다음을 입력하세요.
firefox $sitea
훨씬 더 쉽고 읽기 쉽습니다. $sitea
변수는 내용을 수동으로 변경하거나 Bash 세션이 종료될 때까지 사이트에 매핑된 상태로 유지됩니다. 물론 siteb
와 같은 더 많은 변수를 생성할 수 있습니다. , sitec
및 sitec
.
새 변수를 설정할 때 원하는 이름을 사용하고 그 안에 영숫자 문자열을 저장할 수 있습니다. 그러나 기본적으로 대소문자를 구분한다는 점을 명심하십시오. 따라서 $sitea
$SiteA
와 동일하지 않습니다. . 또한 특수 문자(공백 포함)가 포함된 문자열을 저장할 때는 따옴표를 사용해야 합니다.
스크립트의 변수
Bash의 변수는 단일 스크립트를 작성할 수 있기 때문에 스크립트를 작성할 때 더 유용합니다. 그러면 다른 문자열을 통해 반복하거나 사용자 정의된 데이터 조각에 대해 작동할 수 있습니다. 모든 사람이 자신의 컴퓨터에서 사용할 수 있지만 매번 개인화된 인사말을 표시하는 스크립트를 작성한다고 가정해 보겠습니다. 변수가 없으면 각 사용자에 대해 다른 버전의 스크립트를 작성해야 합니다. 변수를 사용하면 스크립트를 동일하게 유지하고 사용자 이름만 변경할 수 있습니다.
이러한 스크립트는 다음과 같습니다.
#!/bin/bash username=Odysseas echo $username
위의 예는 중복되어 보일 수 있습니다. 그러나 코드가 복잡해짐에 따라 변수는 필수 불가결한 요소가 됩니다. 스크립트는 수백 또는 수천 행이 될 수 있으며 다른 위치에 사용자 이름을 포함할 수 있습니다. 더 잘 이해하려면 다음과 같은 약간 다른 스크립트를 고려하십시오.
#!/bin/bash username=Linus echo Hello $username. This is a simple script I wrote that will repeat your name - that is, $username - often as an actual example of how to use Bash variables. I hope it will make it easier to understand how to use variables to improve your Bash workflow, $username. In this case, the variable username is mapped to your name. Whenever Bash runs into it, it replaces it with $username.
위의 스크립트는 username
으로 정의된 이름을 사용합니다. 텍스트를 완성하는 변수. 실제 사용자 이름을 사용하는 경우 네 번 입력해야 합니다. 그런 다음 다음 사용자에 대해 동일한 작업을 수행하고 다음 사용자에 대해 다시 4번 수행합니다. 계속해서. 변수에 할당하면 각 사용자에 대해 한 번만 변경하면 되며 텍스트에서 사용자 이름이 언급될 때마다 업데이트됩니다.
영구 Bash 변수 및 별칭
일시적으로 변수를 설정하는 방법과 보다 영구적인 변수를 위해 스크립트에 변수를 포함하는 방법을 살펴보았습니다. 하지만 Bash에서 영구적으로 변수를 설정하는 것이 가능하지 않습니까? 대답은 큰 "예!"입니다. 그리고 "~/.bashrc" 파일 하나만 수정하면 됩니다.
좋아하는 텍스트 편집기에서 "~/.bashrc" 파일을 엽니다. 저는 nano를 선호하기 때문에 다음과 같이 했습니다.
nano ~/.bashrc
테스트 실행으로 시작하여 단일 변수만 추가하여 프로세스가 제대로 작동하지 않을 경우 어디를 봐야 하는지 알 수 있도록 제안합니다. 파일 끝으로 이동하고 새 줄에 변수를 추가합니다. 예를 들어 내 이름에 대한 변수를 다음과 같이 설정합니다.
myname="Odysseas Kourafalos"
파일을 저장하고 편집기를 종료합니다. 조정은 즉시 적용되지 않습니다. 적용하려면 터미널에 다음을 입력하세요.
source ~/.bashrc
이제 Bash 세션에서 새로 설정된 변수를 사용할 수 있습니다.
echo $myname
원하는 만큼 변수를 설정하고 Bash에서 일상적인 모험을 크게 단순화할 수 있습니다.
생산성을 추가로 높이려면 별칭과 같은 다른 유형의 변수를 설정하는 것도 좋습니다. 명령에서 사용할 수 있는 데이터에 매핑되는 일반적인 변수와 달리 실제 명령 대신 별칭이 사용됩니다.
기억하기 쉬운 변수를 사용하여 긴 텍스트 문자열을 저장할 수 있는 것처럼 별칭을 복잡한 명령에 대한 쉬운 대안으로 사용할 수 있습니다. 여기에서 전체 7zip 압축 명령을 2자 별칭으로 변환하는 방법에 대해 자세히 알아볼 수 있습니다.
마지막으로 .bashrc에 영구적으로 변수를 설정했더라도 이전에 본 것처럼 임시로 다른 값을 다시 할당할 수 있습니다. 이 변수는 현재 Bash 세션이 종료되거나(로그아웃하거나 다시 시작한 후) .bashrc 파일을 다시 사용할 때까지 새 콘텐츠를 표시합니다.