# shell script

108개의 포스트

shell script

4일 전
·
0개의 댓글

2022-05-18 TIL

\*\*1. $셸 스크립트에 전달되는 인자의 개수2\. -eq2개의 정수가 같은 값인지 비교. 다른 연산자는 비교 연산자(이진) 참고하기3\. @모든 요소를 뜻함. 예를 들어 \*\*4. {문자열}문자열에서 문자\`로 끝나는 prefix를 제거한 문자열 반환.

6일 전
·
0개의 댓글

[shell script] 새로운 로그인, 새로운 쉘 시작 시 특정 스크립트 실행 방법

새로운 로그인 또는 새로운 쉘을 시작할 때 홈 디렉토리의 .bashrc 파일을 실행합니다..bashrc 파일에 특정 명령, 스크립트 파일을 추가하면 새로운 쉘을 시작할 때마다 그 명령이 실행되도록 할 수 있습니다.아래와 같이 .bashrc 파일 끝에 echo문을 추가해

2022년 4월 27일
·
0개의 댓글

[shell script] anacron : 놓친 작업 소급 실행

cron을 사용할 때 불편한 점은 리눅스 시스템이 꺼졌다가 다시 켜졌을 때 놓친 작업은 실행되지 않는다는 것입니다.이를 해결할 수 있는 것이 바로 anacron입니다.anacron은 예약된 실행을 놓친 작업이 있는지 판단하고 될 수 있는 대로 빨리 작업을 소급 실행합니

2022년 4월 27일
·
0개의 댓글

[shell script] crontab 매달 마지막 날에 실행되도록 설정하기

crontab으로 매달 마지막 날을 지정하는 법에 대해 생각해보신 적이 있나요?월마다 마지막 날은 30, 31 등이 있을 수 있어 고정적이지 않습니다.crontab을 사용할 때 매달 마지막 날에 실행되도록 하려면 어떻게 해야 할까요?먼저 crontab 편집창을 열고아래

2022년 4월 27일
·
0개의 댓글
post-thumbnail

[shell script] select-editor : crontab 에디터 변경 방법

crontab -e를 처음 실행하면 에디터 설정이 나옵니다.이 설정을 이후에 변경하고 싶다면 select-editor를 명령합니다.이후 crontab -e을 실행하면 vim 에디터로 열리는 것을 확인할 수 있습니다.

2022년 4월 27일
·
0개의 댓글

[shell script] at 명령으로 작업 예약하기

리눅스 시스템이 스크립트를 실행할 시간을 지정할 수 있습니다.비슷한 기능을 하는 cron이 있지만,1회성 작업을 할 때는 at이 훨씬 편리합니다.at의 데몬이 atd는 리눅스가 시동될 때 자동으로 시작하는 데몬입니다.기본적으로 백그라운드에서 실행되며, /var/spoo

2022년 4월 27일
·
0개의 댓글

[shell script] nice : 프로세스 스케줄링 우선순위 설정 명령

프로세스를 실행할 때 리눅스 커널은 각 프로세스에 CPU를 할당합니다. 이때 스케줄링 우선순위가 존재합니다.우선순위는 -20 ~ +19의 범위로 정해지고, 숫자가 낮을 수록 우선순위가 높다는 의미입니다.쉘은 기본적으로 모든 프로세스를 스케줄링 우선순위 0으로 실행합니다

2022년 4월 27일
·
0개의 댓글

[shell script] 중단된 작업 다시 시작하기

백그라운드 모드에서 중단된 작업을 다시 시작하는 명령어입니다.여기 중단된 프로세스가 있습니다.bg 명령을 수행하면 다시 시작됩니다.기본적으로 bg 명령만 단순히 수행하면 +가 붙은 기본 작업에 대해서만 재시작됩니다.아래의 형식으로 명령을 수행하면 +가 붙지 않은 추가

2022년 4월 27일
·
0개의 댓글

[shell script] jobs : 쉘이 처리하고 있는 현재의 작업 보기

쉘이 처리하고 있는 현재의 작업을 볼 수 있습니다.작업의 내용은 중단된 작업까지 모두 보여줍니다.\-l 옵션을 붙이면 프로세스 ID(PID)를 볼 수 있습니다.작업 목록의 작업 번호 옆에는 +와 -가 있습니다.\+ : 기본 작업(1개에만 붙음)\- : 기본 작업의 처리

2022년 4월 27일
·
0개의 댓글

[shell script] 터미널 세션 종료 후에도 백그라운드 스크립트 실행 유지시키기

터미널 세션을 종료한 후에도 백그라운드 스크립트의 작업을 유지시키고 싶다면 nohup 명령을 이용합니다.nohup은 프로세스와 터미널의 관계를 끊습니다.그래서 STDOUT과 STDERR이 터미널에 나타나지 않습니다.대신, 현재 경로에 nohup.out이라는 파일이 생성

2022년 4월 27일
·
0개의 댓글

[shell script] 백그라운드에서 스크립트 실행하기

백그라운드에서 실행하는 방법은 간단합니다.스크립트를 실행할 때 뒤에 & 기호만 붙여주면 됩니다.대괄호 안의 숫자는 작업 번호입니다.뒤의 숫자는 프로세스 ID(PID)입니다.PID는 프로세스마다 고유값을 가집니다.프로세스가 완료되면 작업 번호, Done, 실행 명령이 표

2022년 4월 27일
·
0개의 댓글

[shell script] 신호를 이용해 쉘 스크립트 다루기

리눅스는 시스템에서 실행되는 프로세스와 통신하기 위해 신호를 사용합니다.프로세스를 중지, 시작, 종료하기 위해 이러한 신호를 사용합니다.기본적으로, BASH 쉘은 SIGQUIT(3) 및 SIGTERM(15) 신호를 받았을 때는 이를 무시합니다.SIGHUP(1) 신호를

2022년 4월 27일
·
0개의 댓글

[shell script] csv 파일의 내용을 가지고 SQL 쿼리 작성하기

.csv 파일은 스프레드시트에서 데이터를 내보낼 때 사용하는 파일 형식입니다.아래와 같은 유저 데이터 csv 파일이 있습니다.이 csv의 유저 데이터를 가지고 MySQL 데이터베이스에 레코드를 삽입하는 INSERT 쿼리를 작성해서 .sql 파일로 저장하는 예제를 수행해

2022년 4월 26일
·
0개의 댓글

[shell script] tee : 출력을 모니터와 로그 파일에 모두 보내기

출력을 모니터와 파일에 모두 보낼 때 출력을 두 번 리다이렉트하는 대신 tee 명령을 사용할 수 있습니다.파이프 명령과 함께 사용하면 유용하게 사용할 수 있습니다.보시는 바와 같이 모니터에도 출력하고 파일에도 내용이 저장된 것을 확인할 수 있습니다.기본적으로 아무 옵션

2022년 4월 26일
·
0개의 댓글

[shell script] 임시 파일 이용하기

/tmp 디렉토리는 리눅스 시스템의 임시 파일을 저장하는 공간입니다. 리눅스는 시동할 때 /tmp 디렉토리에 있는 파일을 자동으로 제거하도록 시스템을 구성합니다.mktemp 명령으로 현재 경로에 임시 파일을 만들어 보겠습니다.반드시 <파일이름>.XXXXXX의 형식

2022년 4월 26일
·
0개의 댓글

[shell script] 명령 출력 억제하기

쉘 스크립트에서 명령에 대한 출력을 나타내지 않게 하기 위해서는 /dev/null을 이용합니다.스크립트의 출력을 모두 표시하고 싶지는 않을 수도 있습니다.예를 들어, 백그라운드에서 프로세스를 실행하는 동안 스크립트에서 소소하고 귀찮은 오류가 생길 때 이러한 오류에 대해

2022년 4월 26일
·
0개의 댓글

[shell script] 파일 디스크립터 닫기

lsof -a -p $$ -d 0,1,2 명령을 이용해 파일 디스크립터에 대한 정보를 볼 수 있습니다.\-p $$ : -p는 프로세스 ID를 지정하는 옵션입니다. $$는 현재 PID를 의미하는 환경 변수입니다.\-d 옵션 뒤의 파라미터는 조회하고 싶은 파일 디스크립터의

2022년 4월 26일
·
0개의 댓글

[shell script] 사용자 정의 입력 파일 디스크립터 만들기

3~8번 파일 디스크립터에 입력 파일 디스크립터를 만들어봅시다.파일로부터 내용을 입력받는데, 3~8번 파일 디스크립터를 이용하는 방법에 대해 알아보겠습니다.아래의 코드를 봅시다.코드 리뷰exec 6<&0과 exec 0<test

2022년 4월 26일
·
0개의 댓글

[shell script] 사용자 정의 리다이렉션 만들기

사용자 정의 리다이렉트를 만들어봅시다.기본적으로 파일 디스크립터는 0~8까지 존재하고, 3~8에 대해서 사용자 정의 리다이렉션을 정의할 수 있습니다.&<파일 디스크립터>는 해당 파일 디스크립터가 출력되는 장소를 나타냅니다.exec 3>&1로 되어 3번 파일 디스크

2022년 4월 25일
·
0개의 댓글