Linux
12 Jan 2022 | ETC.
Commands Options Description e.g.
File Commands
ls 현재 directory의 파일 목록
-a 감춰진 파일까지 모두 표시
-l ls를 더 자세히
-al 감춰진 파일 더 자세히
-alS 감춰진 파일 더 자세히, 파일 크기를 기준으로 sort
pwd 현재 경로
mkdir [이름] 현재 directory 하위에 새 directory 만들기
touch [이름] 비어 있는 파일 만들기 touch test.txt
rm [파일 이름] 파일 삭제 rm test.txt
-r [디렉토리 이름] 디렉토리 삭제 rm -r testdirectory
cp A B A를 B에 복사 cp test.txt ./test2
mv A B A를 B에 옮기기 mv ./test/test.txt ./test2
(./test에 있는 test.txt를 ./test2로 옮김
A B 이름 바꾸기도 가능 mv ./test2/test.txt ./test2/test2.txt
(test.txt를 test2.txt로 바꿈)
cat [파일 이름] 파일 내용 보기 cat test.txt
tail -n [번호] 마지막에서 n번째 줄까지 출력 tail -n 2 test.txt
test.txt파일에서2번째 라인까지 출력
-f 추가 될 때마다 출력 tail -f date.log
date.log에 추가되는 걸 출력해라
head -n [번호] n번째 줄까지 출력
more [파일 이름] 텍스트 파일 보기 more test.txt
less [파일 이름] 텍스트 파일 보기(more보다 화면 이동이 자유로움) less test.txt
Directory Traverse
cd [directory] directory 변경
.. 부모 디렉토리로
~ home directory
Process Related
ps 프로세스 확인하기
aux 더 자세히 확인하기 ps aux | grep apache
(프로세스 중에 'apache'들어 간 거를 찾아서 자세히 확인하겠다.)
top 프로세스 정보(작업 관리자)
htop top을 좀 더 잘 보여 줌
kill %[jobs 번호] 실행 중인 작업 종료 kill %2
kill -9 %2
Search
grep 일반적으로 다른 명령어와 함께 쓰이며, 특정 문자열을 찾을 때 사용 ps aux | grep python
locate [찾을 거] mlocate라는 (이름만 담겨 있는)데이터베이스에서 찾음 locate *.log
이 컴퓨터에 확장자가 .log인 파일을 다 찾아라
find 실제 파일들 뒤져서 찾음
. 현재 directory부터 찾는다
/ root directory부터 찾는다
~ home directory부터
System Info
date [--option] 시스템 날짜 관련 명령어 date -s 06:14:00 (시스템 시간을 6시 14분 00초로 설정)
jobs 실행 중인 작업 표시
free 메모리 사용량 확인
whereis [command] 실행 파일이 어디 있는지 찾아 줌 whereis ls
man [command] 설명 보기 man ls
검색:'/'(ex)/sort)
--help 설명 보기 ls --help
System Management
cron service cron start(crontab 시작)
service cron stop(crontab 중지)status
service cron rastart(crontab 재시작)
특정 시간에 특정 작업을 하는 데몬을 Cron이라고 함.
예약 작업에서 많이 사용됨.(반복된 시간에 반복된 작업을 해야하는 작업)
crontab Cron이 언제 무엇을 하는지 특정 파일에 저장하는 것을 Crontab이라고 함.
즉, Cron이라는 데몬이 원하는 시간에 원하는 명령 또는 프로그램 을 수행하도록 명령 리스트를 만드는 것이 Crontab이다. crontab -e(crontab edit)
crontab -l(crontab 작업 내용 확인)
crontab -ㄱ(crontab 작업 전체 삭제)
nohup no hang up. 세션을 끊지 말고 데몬 형태로 실행(명령어 뒤에 &를 붙이면 background로 실행) nohup ./run.sh & (back에서 돌리기)
ps -ef | grep run.sh (background에서 도는 거 확인)
nohup ./run.sh > run_log.log (로그파일 저장)
systemctl 서버 재가동 시 서비스 재실행하는 것에 많이 사용됨 (https://priming.tistory.com/73)[https://priming.tistory.com/73]
etc
clear 명령창 깨끗하게
> Input Output Redirection ls -l > result.txt
원래 화면에 출력되어야 할 것의 방향을 돌려서 파일에 저장
Cron
정기적으로 해야할 작업을 처리할 때 사용
crontab -e에 작업을 등록하면 cron이 정기적으로 처리해 줌
m(분) h(시간) dom(일) mon(월) dow(요일) command(명령)
*/1 * * * * date » date.log => 1분에 한 번씩 date정보를 date.log에 저장
Package Manager
Commands Description e.g.
apt-get update apt라는 package manager server에 접속해서 최신 상태의 소프트웨어 목록을 다운 받음 sudo apt-get update
apt-cache search [file] 저장되어 있는 것(cache) 검색한다(search)(q누르면 나가짐) sudo apt-cache search htop
apt-get install [file] 다운 받기 sudo apt-get install htop
apt-get upgrade [file] 설치된 파일 업그레이드 sudo apt-get upgrade htop
sudo apt-get upgrade만 하면 다 업그레이드
apt-get remove [file] 삭제 sudo apt-get remove htop
- update는 설치할 수 있는 목록을 최신상태로 유지하는 거
- upgrade는 설치한 프로그램을 업그레이드 하는 거
Commands | Options | Description | e.g. |
---|---|---|---|
File Commands | |||
ls | 현재 directory의 파일 목록 | ||
-a | 감춰진 파일까지 모두 표시 | ||
-l | ls를 더 자세히 | ||
-al | 감춰진 파일 더 자세히 | ||
-alS | 감춰진 파일 더 자세히, 파일 크기를 기준으로 sort | ||
pwd | 현재 경로 | ||
mkdir | [이름] | 현재 directory 하위에 새 directory 만들기 | |
touch | [이름] | 비어 있는 파일 만들기 | touch test.txt |
rm | [파일 이름] | 파일 삭제 | rm test.txt |
-r [디렉토리 이름] | 디렉토리 삭제 | rm -r testdirectory | |
cp | A B | A를 B에 복사 | cp test.txt ./test2 |
mv | A B | A를 B에 옮기기 | mv ./test/test.txt ./test2 (./test에 있는 test.txt를 ./test2로 옮김 |
A B | 이름 바꾸기도 가능 | mv ./test2/test.txt ./test2/test2.txt (test.txt를 test2.txt로 바꿈) | |
cat | [파일 이름] | 파일 내용 보기 | cat test.txt |
tail | -n [번호] | 마지막에서 n번째 줄까지 출력 | tail -n 2 test.txt test.txt파일에서2번째 라인까지 출력 |
-f | 추가 될 때마다 출력 | tail -f date.log date.log에 추가되는 걸 출력해라 | |
head | -n [번호] | n번째 줄까지 출력 | |
more | [파일 이름] | 텍스트 파일 보기 | more test.txt |
less | [파일 이름] | 텍스트 파일 보기(more보다 화면 이동이 자유로움) | less test.txt |
Directory Traverse | |||
cd | [directory] | directory 변경 | |
.. | 부모 디렉토리로 | ||
~ | home directory | ||
Process Related | |||
ps | 프로세스 확인하기 | ||
aux | 더 자세히 확인하기 | ps aux | grep apache (프로세스 중에 'apache'들어 간 거를 찾아서 자세히 확인하겠다.) | |
top | 프로세스 정보(작업 관리자) | ||
htop | top을 좀 더 잘 보여 줌 | ||
kill | %[jobs 번호] | 실행 중인 작업 종료 | kill %2 kill -9 %2 |
Search | |||
grep | 일반적으로 다른 명령어와 함께 쓰이며, 특정 문자열을 찾을 때 사용 | ps aux | grep python | |
locate | [찾을 거] | mlocate라는 (이름만 담겨 있는)데이터베이스에서 찾음 | locate *.log 이 컴퓨터에 확장자가 .log인 파일을 다 찾아라 |
find | 실제 파일들 뒤져서 찾음 | ||
. | 현재 directory부터 찾는다 | ||
/ | root directory부터 찾는다 | ||
~ | home directory부터 | ||
System Info | |||
date | [--option] | 시스템 날짜 관련 명령어 | date -s 06:14:00 (시스템 시간을 6시 14분 00초로 설정) |
jobs | 실행 중인 작업 표시 | ||
free | 메모리 사용량 확인 | ||
whereis | [command] | 실행 파일이 어디 있는지 찾아 줌 | whereis ls |
man | [command] | 설명 보기 | man ls 검색:'/'(ex)/sort) |
--help | 설명 보기 | ls --help | |
System Management | |||
cron | service cron start(crontab 시작) service cron stop(crontab 중지)status service cron rastart(crontab 재시작) | 특정 시간에 특정 작업을 하는 데몬을 Cron이라고 함. 예약 작업에서 많이 사용됨.(반복된 시간에 반복된 작업을 해야하는 작업) | |
crontab | Cron이 언제 무엇을 하는지 특정 파일에 저장하는 것을 Crontab이라고 함. 즉, Cron이라는 데몬이 원하는 시간에 원하는 명령 또는 프로그램 을 수행하도록 명령 리스트를 만드는 것이 Crontab이다. | crontab -e(crontab edit) crontab -l(crontab 작업 내용 확인) crontab -ㄱ(crontab 작업 전체 삭제) | |
nohup | no hang up. 세션을 끊지 말고 데몬 형태로 실행(명령어 뒤에 &를 붙이면 background로 실행) | nohup ./run.sh & (back에서 돌리기) ps -ef | grep run.sh (background에서 도는 거 확인) nohup ./run.sh > run_log.log (로그파일 저장) | |
systemctl | 서버 재가동 시 서비스 재실행하는 것에 많이 사용됨 | (https://priming.tistory.com/73)[https://priming.tistory.com/73] | |
etc | |||
clear | 명령창 깨끗하게 | ||
> | Input Output Redirection | ls -l > result.txt 원래 화면에 출력되어야 할 것의 방향을 돌려서 파일에 저장 |
Cron
정기적으로 해야할 작업을 처리할 때 사용
crontab -e에 작업을 등록하면 cron이 정기적으로 처리해 줌
m(분) h(시간) dom(일) mon(월) dow(요일) command(명령)
*/1 * * * * date » date.log => 1분에 한 번씩 date정보를 date.log에 저장
Package Manager
Commands | Description | e.g. |
---|---|---|
apt-get update | apt라는 package manager server에 접속해서 최신 상태의 소프트웨어 목록을 다운 받음 | sudo apt-get update |
apt-cache search [file] | 저장되어 있는 것(cache) 검색한다(search)(q누르면 나가짐) | sudo apt-cache search htop |
apt-get install [file] | 다운 받기 | sudo apt-get install htop |
apt-get upgrade [file] | 설치된 파일 업그레이드 | sudo apt-get upgrade htop sudo apt-get upgrade만 하면 다 업그레이드 |
apt-get remove [file] | 삭제 | sudo apt-get remove htop |
- update는 설치할 수 있는 목록을 최신상태로 유지하는 거
- upgrade는 설치한 프로그램을 업그레이드 하는 거