반응형
1. VI 에디터 핵심 명령 이해하기
vim 초간단 사용법
- 입력
(입력 모드 진입 시, 왼쪽 하단에 "--INSERT--"라는 문구가 출력됨)
i 포커스 잡힌 커서 위치에서 편집모드 시작
a 포커스 잡힌 커서 위치 바로 다음에서 편집모드 시작
- 삭제(일반 모드에서 실행)
x 커서의 한 문자를 삭제
- 파일 저장
:w 현재 오픈된 파일 저장
:q 저장하지 않고 종료(quit)
:wq 현재 오픈된 파일 저장 후 종료
:q! 강제 종료
- 블록 지정 및 복사(Visual 모드에서 활용)
v 단어 단위로 블럭 지정
shift + v 라인 단위로 블럭 지정
y 지정된 블럭 복사
p 복사된 블럭을 현재 커서에 붙여넣기
u 직전 실행 작업 취소
*자주 사용하는 시나리오
- v로 visual 모드로 들어간 후 shift를 누른 채 커서 이동을 통해 블록 지정, y를 눌러 블록 복사,
붙여넣을 곳으로 커서 이동 후 p를 눌러 복사된 블록 붙여넣기
- 편집
x 커서의 한 문자를 삭제
dd 커서의 현재 라인 삭제
shift + j 커서의 아랫라인과 현재 라인을 한 라인으로 합치기
- 명령 모드에서 set all 입력: vim에서 설정할 수 있는 모든 옵션 확인
- ./vimrc 파일에 필요한 vim 설정 가능
vim 주요 설정
2. 쉘스크립트 이해하기
쉘 스크립트란?
- 시스템 프로그래밍에서 꼭 익히는 내용 중 하나로, 쉘을 사용해서 프로그래밍을 할 수 있음
- 서버 작업 자동화 및 운영(DevOps)을 위해 기본적으로 익혀둘 필요가 있음
- 쉘 명령어를 기본으로 하되, 몇 가지 문법이 추가된 형태
- 간단한 쉘 스크립트를 생성하고 주기적으로 실행하면,
업데이트되지 않은 오래된 로그 파일이 쌓여 관련 프로그램이 비정상적으로 종료되는 현상을 막을 수 있음
->쉘 스크립트를 파일로 작성한 후, 그 파일을 실행하는 것
기본 개념
- 쉘 스크립트 파일의 가장 위 첫 라인은 "#!/bin/bash"로 시작
- 쉘 스크립트 파일을 실행하려면 실행 권한이 필요
- 일반적으로 "파일이름.sh"과 같은 형태로 파일 이름 작성
- "#" 기호로 시작하는 라인은 주석처리
3. 쉘스크립트 시작/변수 선언하기
변수 선언 및 사용
- 선언: 변수명=데이터(띄어쓰기 없이)
- 사용: $변수명
#!/bin/bash
mysql_id='root'
mysql_directory='/etc/mysql'
echo $mysql_id
echo $mysql_directory
리스트 변수 (배열)
- 선언: 변수명=(데이터1 데이터2 데이터3 ...)
- 사용: ${변수명[인덱스번호]}
#! /bin/bash
daemons=("httpd" "mysqld" "vsftpd")
echo ${daemons[1]} # $daemons 배열의 두 번째 인덱스에 해당하는 mysqld 출력
echo ${daemons[@]} # $daemons 배열의 모든 데이터 출력
echo ${daemons[*]} # $daemons 배열의 모든 데이터 출력
echo ${#daemons[@]} # $daemons 배열 크기 출력
filelist=( $(ls) ) # 해당 쉘스크립트 실행 디렉토리의 파일 리스트를 배열로 $filelist 변수에 입력
echo ${filelist[*]} # $filelist 모든 데이터 출력
사전에 정의된 지역 변수
$$ : 쉘의 프로세스 번호
$0 : 쉘스크립트 이름
$1 ~ $9 : 명령줄 인수
$* : 모든 명령줄 인수리스트
$# : 인수의 개수
반응형