본문으로 바로가기

쉘에 대한 이해3

category SECURITY/Linux 2017. 3. 29. 19:14

쉘에 대한 이해3

 

사용자별 쉘 설정파일

 - 쉘 스크립트

   한마디로 명령어들의 모음이다. 명령어를 파일형태로 만들어 자동으로 실행되게끔 수행하게 만드는 것을 쉘 스크립트라고 한다.

   쉘 스크립트 안에 명령어들은 순차적으로 실행되게 된다.

 - 사용자의 홈 디렉터리로 존재

 - bash에서 사용하는 기본 설정 파일

   .bash_logout .bash_profile .bashrc

  사용자의 홈 디렉터리에 내용을 보면 기본 설정 파일이 들어가 있다는 것을 확인할 수 있다.

 

쉘 스크립트 간단한 예제

/study 디렉터리와 /test 디렉터리에 있는 내용을 백업을 하고 싶다.

1) /backup 디렉터리가 존재한다면 삭제한다.

2) 백업할 디렉터리를 생성한다.(/backup)

3) /study 디렉터리에 있는 파일들을 복사한다.

4) /test 디렉터리에 있는 파일들을 복사한다.

5) /backup 디렉터리를 /tmp/ 디렉터리로 이동한다.

6) 백업 -> 다른장치로 복사한다.

7) /backup 디렉터리를 삭제한다.

 

이 명령어들을 모두 치는 것보다는 쉘 스크립트를 이용해 실행시켜보고자 합니다. 

 

현재 /study 디렉터리와 /test 디렉터리에는 아래와 같은 파일이 있습니다.

vi backup.sh 를 통해 쉘 스크립트를 만들어줍니다.

여기서 .sh로 쓴 이유는 쉘이라는것을 보기 쉽게 해준 것입니다. 따라서 그냥 backup으로 해도 상관은 없습니다.)

vi를 쓸때에는 맨 윗줄에 #!/bin/sh 이라는 명령을 쳐 주어야 합니다. 그 이유는 쉘 스크립트를 실행하라는 뜻입니다.

중간에 보면 if 문을 쓴 것을 볼 수 있는데 그 부분은 man bash 로 확인해 볼 수 있습니다.

쓰는 방법 : if 리스트 then 리스트 [elif 리스트 then 리스트]... [else 리스트] fi

그러면 ls명령을통해 backup.sh가 생성되었다는 것을 볼 수 있습니다. 하지만 실행권한이 없기 때문에 쉘 스크립트를 실행시킬 수 없습니다.

이때 chmod 명령을 통해서 실행권한을 주어 쉘 스크립트를 실행시킬 수 있도록 만들어 줍니다.

그러고 나서 ./backup.sh 로 실행시켜보면 실행되었음을 확인할 수 있습니다. 원래는 /tmp파일에서도 지워지기 때문에 확인해 볼 수 없지만,

지우기 전단계까지 만들어서 확인시켜보았습니다. 아래와 같이 쉘 스크립트를 실행만으로 알아서 명령에 따라 복사되었음을 볼 수 있습니다.

 

 

 

 

'SECURITY > Linux' 카테고리의 다른 글

장치 - 디스크  (0) 2017.03.31
쉘에 대한 이해4  (0) 2017.03.30
쉘에 대한 이해2  (0) 2017.03.28
쉘에 대한 이해1  (0) 2017.03.28
ACL  (0) 2017.03.28