ctrl + a
- 라인 맨 앞으로 커서 이동
ctrl + e
- 라인 맨 끝으로 커서 이동
ctrl + r
- history 검색, ctrl + r 을 통해 이전 항목으로 돌아감.
ls -alt
- 파일 목록을 시간 순으로 정렬
- r 옵션은 역순
ls -1
- 파일 목록을 하나의 열로 나열
df -T
- 디스크 타입 출력
stat [파일명]
- 파일 정보 출력
cp -rfp
- r: recursive
- f: force 동일 파일이 있더라도 덮어 씌우는 옵션
- p: permission 권한을 그대로 복사
rename
- rename [변경전 파일명] [변경후 파일명] [대상파일]
- rename test test0 test?
paste
- 파일을 행으로 읽어 병합
- paste [파일1] [파일1]
[root@vm tmp]# paste text1 text2
a 1
b 2
c 3
dd
- 랜덤 데이터로 파일을 생성해 드라이브 성능 측정 (덤프 파일 생성)
- dd if=/dev/urandom of=[output파일] bs=[바이트] count=[블럭 복사 횟수]
- urandom 랜덤 문자를 생성하는 장치 파일
ps -ef
- 프로세스 확인
- -e 시스템에서 실행 중인 모든 프로세스 정보 출력
- -f 프로세스의 자세한 정보 출력
- -p pid로 지정한 특정 프로세스 정보 출력
ps aux
- 프로세스 확인 및 CPU, MEM 사용률 확인
- -a 터미널에서 실행한 프로세스 정보 출력
- -u 프로세스 소유자이름 CPU, MEM 등 상세출력
- -x 시스템에서 실행 중인 모든 프로세스 정보 출력
ps afxwww
- w를 많이 쓸 수록 출력 내용을 많이 볼 수 있음
pgrep
- 지정한 패턴과 일치하는 프로세스를 찾음
- -x: 정확히 일치
- -u: 사용자
- -p: PID
- -l: PID와 프로세스 이름 출력
pgrep -l nginx
pgrep -a nginx
ps afxwwwww | grep nginx
ps -fp $(pgrep -x bash)
top
- 프로세스의 목록을 일정 시간마다 새로고침, k를 누르면 많이 사용중인 프로세스를 확인가능
- top - 현재 시간
- up 시스템이 up된 시간
- load average: 서버에 걸리는 부하의 평균값, 부하는 CPU가 처리하지 못하고 대기하고 있는 프로세스의 평균 숫자 높을 서버가 느려질 가능성이 높다. 1분 평균 | 5분 평균 | 10분 평균
- user 몇 명이 접속 중인지
- tasks 현재 가동중인 프로세스
- running CPU 가 실행중인 프로세스
- %CPU CPU에 대한 통계, 숫자 1을 누르면 코어별로 확인가능
nohup
- 쉘 스크립트 파일을 데몬 형태로 실행
- 표준 출력을 지정한 파일로 리다이렉트
주요 시그널
- SIGINT: -2 인터럽트 ctrl +c
- SIGKILL: -9 프로세스 강제종료
- SIGTERM: -15 일반적인 프로세스 종료
netstat -nltpu / ss
- 오픈중인 포트와 프로그램을 확인
- n: ip 나 포트 번호로 표현
- l: listening 상태
- t: tcp
- p: 프로그램 이름 출력
- u: udp
netstat -tanu / ss
- 현재 네트워크 상태 전체를 확인
- ESTABLISHED: 현재 사용중
iptables -nL / firewalld 동일한 기능
- n: ip 나 포트 번호로 표현
- L: list- Chin INPUT: inbound rule
- Chain FORWARD: 서버를 경유해서 통과
- Chain OUTPUT: outbound rule
curl -Lkso /dev/null -w "%{http_code}\n" 접속URL
- L: 리다이렉트 페이지로
- k: https의 인증 무시
- s: curl 통계값 무시
- o: output 파일 지정
- -w: output format 설정
grep 옵션 문자열 파일명
- grep error /var/log/messages
- i: ignore
- r: 하위 디렉터리 까지
- -v: grep 제외 (ps -ef | grep nfs | grep -cv grep)
- -c: 문자열 카운트 옵션
- |wc -l
redirection
- echo abc >| test 쉘 스크립트 내부에서 없는 파일을 생성 할 때 사용
w 및 who
- 현재 시스템에 로그인한 사용자 출력
- w를 누르면 더 상세히 확인 가능
date
- 특정 시점의 날짜와 시간을 지정 가능 "day / week / month / hour / minute / second"
과거시점: date -d '-1 day'
미래시점: date -d '3 day'
(date '+%Y-%m-%d %H:%M:%S' 와 같이 형식 변경)
(date '+%Y%m%d')
seq
- 지정한 규칙으로 숫자열 출력(문자는 오류)
(seq 0 10)
- -w 옵션을 통해 가장 큰 숫자에 맞춰 0을 채워줌 seq -w 0 10
- -f %02g 1 5
watch -n 초 명령어
- n 초 만큼 명령어를 재실행
- watch -n 2 uptime
timeout Ns 명령어
- n 초 뒤 명령어 종료
crontab
- -e: 파일 생성 및 수정
- -l: 작업 목록 확인
- -r: crontab 에 등록된 일정을 모두 삭제
- /var/spool/cron 에 작업 정보 저장
AND 조건
A && B
A: 참/거짓을 판단하는 조건/명령
B: A가 참일 경우 실행 할 명령
- 하나라도 거짓이면 전체가 거짓
- 좌측 결과가 참이면 우측 명령 실행, 좌측 결과가 거짓이면 우측 실행 x
OR 조건
A || B
A: 참일 경우 B실행 x
B: A가 거짓일 경우 실행
- 하나라도 참이 있으면 전체가 참
- 좌측 결과가 참이면 우측 명령 실행 x, 좌측 결과가 거짓이면 우측 명령 실행
test
test 1 == 1 && echo "정답"
[ 1 == 1 ] && echo "정답"
- -e: 파일이 존재하는지
- -f: 지정한 파일이 참이면 참
- -d: 지정한 파일이 디렉토리면 참
([ -e /var/log/messages ] && tail -n 15 /var/log/messages)
column
- 공백을 원하는 옵션으로 처리
(mount | column -t)
vim 비주얼 모드
- ctrl + v 누른 후 범위 지정
- y: 복사, p: 붙여넣기, x:잘라내기, d:삭제
- Shift + i #으로 주석처리
wc
- 지정한 파일의 단어 갯수를 반환, -l 은 line 수 반환
- 라인 단어갯수 byte
1. pwd: 현재 디렉터리 확인(절대 경로)
2. cd: 디렉터리 이동
3. ls: 현재 디렉터리 내용 출력
디렉터리: /가 뒤에 붙음
심볼릭 링크(바로가기): @가 뒤에 붙음
- -a: 숨김 파일 확인
- -F: 파일 종류 확인
- -R: 서브디렉터리의 내용 확인
4. 디렉터리 생성
- mkdir 후 띄어쓰기로 동시에 생성
-p: 옵션을 통해 하위 항목 순차적으로 디렉터리 생성
5. 디렉터리 삭제: rmdir
6. 파일 내용 확인: cat
- -n: 행 번호 같이 출력
7. 파일확인: more, less, tail
- 공통적으로 /검색어 명령어를 통해서 검색 가능
- more: 넘어간 페이지는 뒤로갈 수 없음
- less: j, k를 통해 행 전환 가능
- tail: 끝의 행을 기준으로 결과 값 출력
-f 옵션을 통해 결과값을 지속적으로 출력 (ctrl+c 를 통해 명령 종료)
-숫자 옵션을 통해 끝에서 숫자만큼의 행만 가져온다.
------------------------------
nginx 설정 파일 경로
/etc/nginx/nginx.conf
pid /run/nginx.pid 를 통해 nginx 마스터 프로세스 확인가능
'OS > Linux' 카테고리의 다른 글
Shell Script 정리(디스크 용량) (0) | 2021.03.10 |
---|---|
Shell Script 정리 (0) | 2021.03.09 |
CentOS 설치 후 자동완성이 되지 않을 경우 (0) | 2021.02.25 |
[Linux] RAID 기본 설정 방법 (0) | 2020.12.29 |
[Linux] tar, 파일 압축 (0) | 2020.12.28 |