다양한 배쉬 커맨드를 작성 및 조합하고, 이를 실행할 수 있는 파일로 만들 수 있습니다.
The Basic Steps
기본적인 틀은 다음과 같습니다.
(순서를 꼭 지키지 않아도 됩니다)
작성, 권한부여, 명령위치 찾기
1. 스크립트를 작성하여 파일로 저장합니다.
#!/bash/bin
#test script
echo "Hello $USER"
echo "Today is $(date)"
echo "$(date)" >> hello.log
스크립트의 첫번째 줄은 #!(shebang)과 bin, bash를 입력합니다.
(#!은 작성한 스크립트에 대해, PATH변수를 기반으로 처리하여 실행가능하도록 합니다.)
코멘트를 작성하고 원하는 스크립트를 작성합니다.
아래와 같은 방식으로 실행할 수 있습니다.
bash 스크립트파일
단, 다른 설정을 해주지 않았기 때문에 파일의 경로를 잘 지정해줘야 합니다.
2. 그 파일이 실행될 수 있도록 chmod로 실행 권한을 부여합니다.
작성한 스크립트 파일을 실행할 수 있도록 실행에 대한 권한을 부여합니다.
chmod a+x file
팔진법을 사용할 수도 있습니다.
단, 기존 권한을 유지하려면 기존 권한과 매핑되는 자릿수에 +1을 해줍니다.
읽기4 쓰기2 실행하기1 이기 때문입니다.
(기존 권한이 600 이라면 711로)
3. 쉘이 스크립트를 찾을 수 있는지 확인합니다($PATH).
command를 실행할 때, 쉘은 내장변수인 PATH에서 command를 찾습니다.
(쉘은 실행 가능한 프로그램을 찾기 위해 PATH 변수를 살펴봅니다)
스크립트를 어디서나 실행할 수 있도록 PATH를 설정합니다.
내장변수 PATH
PATH 변수는 디렉토리 목록으로 구성되어 있습니다.
(명령어를 실행하면 먼저 /usr/local/sbin에 있는지 살펴보고, 그다음으로 /usr/local/bin 순으로 살펴봅니다)
따라서 명령어를 만드는 작업을 할 때,
PATH 변수가 그 명령어를 찾을 수 있도록 설정해주는 것이 무척 중요합니다.
일반적으로 사용자가 만드는 명령어는 각각의 사용자 디렉토리 내부에 정의하여,
모든 사용자에게 영향을 미치지 않도록 합니다.
일반적으로 사용자별 고유한 스크립트를 정의하는 위치는 home/사용자/bin 입니다.
(.bin이 아닌 bin입니다)
bin에 스크립트 파일을 넣고, 스타트업 파일의 $PATH에 bin을 매핑합니다.
일부 OS에선 bin생성시 $PATH에 자동으로 추가될 수 있습니다
(우분투에서 less .profile 으로 확인가능합니다)
수동으로 추가하려면 bashrc에 아래 코드를 추가합니다.
PATH="$HOME/bin:$PATH"
명령어를 통해 경로를 확인할 수 있는지 살펴봅니다.
echo $PATH | grep 사용자명
스크립트를 생성하고 사용하려면, 위의 과정을 거쳐야 합니다.
'OS' 카테고리의 다른 글
[Home Server] USB로 우분투 설치, 인터넷 연결, SSH 설정, 공유기 설정 (0) | 2024.05.08 |
---|---|
[Linux Command Line] Cron 크론 (0) | 2024.01.12 |
[Linux Command Line] environment variables, alias(환경 변수와 에일리어스) (0) | 2024.01.09 |
[Linux Command Line] 권한 변경 (0) | 2024.01.08 |
[Linux Command Line] 권한 기초 (2) | 2024.01.08 |