자주쓰는 Linux 명령어 정리
자주쓰는 Linux 명령어
man
: manual의 약자. 명령어들이 어떤게 있는지 조회하는 명령어. 명령어의 상세 정보에 대해서 알려줌man ls
: ls 명령어의 사용방법들을 알려줌.\"tool" --help
: 명령어도 사용법을 알려주나, man 보다는 자세하지 않음.
pwd
: 현재 directory의 위치cd
: directory로 이동cd ~
: home directory로 이동함 ( home/사용자 )- 그냥
cd
를 쳐도 동일하게 home directory로 감
- 그냥
cd -
: 바로 이전의 directory로 이동
ls
: 현재 디렉토리에 있는 파일 목록 표시.ls -al
: 상세 내용에 대해서 표시.
cat "filename"
: file에 들어있는 내용을 출력.head "filename"
: file의 시작부터 일부만 bash에 출력.tail "filename"
: file의 끝부터 위쪽으로 일부의 내용만 bash에 출력.more or less "filename"
: file의 위쪽부터 일부분만 표시. enter로 다음줄로 넘김.grep
: 각 파일에서 패턴에 일치하는 행들을 찾음.grep -i "hello world" menu.c main.c
: menu.c, main.c에서 ‘hello world’를 찾음.ls -al | grep "kern.log"
: ls -al의 결과물에서 “kern.log”라는 text를 찾는 명령어, 이런식으로 찾아보는 경우가 많다고함.grep "startup packages confugre" dkpg.log | tail
: grep의 결과물에서 tail tool을 사용해 console에 출력.cat dpkg.log | grep "2022-01-07 15:39:32"
: cat 명령어의 결과물에서 “2022-01-07 15:39:32” text를 찾음.
find
: 파일의 위치를 찾고 후속 명령을 취할 수 있는 Tool- find 명령어는 기본적으로 현재 디렉토리를 기준으로 모든 하위 디렉토리를 탐색하게 됨.
find /etc -name "Filename" -print
: /etc directory에서 파일명이 “Filename”인 것을 모두 검색해라.- FileName에는 wildcard가 적용가능함.
*.conf
라고하면 .conf로 끝나는 파일을 모두 찾음.
- FileName에는 wildcard가 적용가능함.
file "filename"
: filename의 속성을 알 수 있음.- ex ) file filelist.gz : filelist.gz: gzip compressed data. was “filelist”. …
gzip
: 파일을 압축해주는 명령어. .gz 파일로 압축된다.gzip filelist
: filelist.gz 파일로 압축되어 있는 것을 확인할 수 있음.
gunzip
: .gz 파일을 uncompressed 해주는 명령어mv
: 파일 name을 변경하거나, directory 위치로 이동시켜주는 명령어mv filenameA filenameB
: filenameA를 filenameB로 변경mv filenameA directoryA
: filenameA를 directoryA로 이동
tar
: tar는 여러개의 파일을 하나의 파일로 연결해주는 명령어이다. 압축의 개념은 아니고 있는 그대로 쭉 연결해주는 방식이다. 보통 tar 파일이라고 하는 것은 파일을 여러개로 연결해둔 파일이라고 생각하면 된다.tar -czf test.tar.gz filelist.gz file foo
: from “filelist.gz, file, foo” to “test.tar.gz”tar -zxf test.tar.gz
: 합쳐진 파일을 분리
rm
: 파일 제거 명령어rm -rf test1
: test1 경로의 모든 파일을 다 제거함rm
명령어는 윈도우와는 다르게 복구 불가.
date
: 현재 시간 출력- cloud server 이용시 사용될 수 있음.
- 시스템 시간 변경도 가능.
- Formatting 하는 기능도 있으니 참고
cal
: 달력 출력cal -d "년-월"
: 해당 년-월의 달력 출력
history
: 이전에 사용된 명령어들 확인 가능history !number
: history-number의 명령어 실행
!!
: 직전의 command 실행exit
: shell 종료echo
: console에 출력echo "message"
: console에 message 출력echo $pwd
: pwd 환경변수 출력- $PATH 등 환경 변수 모두 가능함.
env
: 모든 환경변수 목록 출력which
: 명령어 & tool 의 위치 확인 가능- which ls, which file 이런것도 됨.
touch
: 파일 생성 command.touch a.txt
: a.txt 파일 생성
ln
: link 생성을 위한 명령어. 별도의 명령어가 없다면 hardlink를 default로 생성한다.ln a.txt apple
: a.txt 파일의 inode를 가리키는 apple hardlink 생성.ln -s a.txt banana
: a.txt와 연결된 banana ( symbollink ) 를 생성.
stat
: ls 이외에도 파일의 정보를 볼 수 있는 명령어. ls 보다 더 자세한 내용을 확인할 수 있다. ( Device, Block, IO Block 등등)stat filename
: filename의 상세 내용 출력- Modify : 파일 내부의 Content 변경시간
- Change : Inode의 변경시간
chmod
: 파일 권한 부여. 두가지 방식으로 파일에 권한을 부여할 수 있다.chmod 777 filename
: filename에 777 ( read, group, other ) 모두 read, write, execute 권한을 부여하라는 뜻chmod go+rx filename
: 기존 filename의 권한에서 group, other 쪽에 read, execute 권한을 부여.- u = user, g = group, o = others, a = all;
-
- = add permission, - = remove permission
- r = read, w = write , x = execute
adduser
: 사용자 혹은 그룹을 추가하는 명령어deluser
: 사용자 혹은 그룹을 제거하는 명령어su
: shell 상에서 로그인 계정을 변경하는 명령어ps
: 프로세스 리스트 확인ps -f
: PPID, CPU Usage(C), STIME ( Started time ) 등 더많은 Column을 출력해서 보여줌.ps -e
: 리눅스에서 실행되는 모든 프로세스에 대해서 listingps -ef --forest
: 부모 - 자식 관계를 Tree 형태로 출력
echo $$
: 현재 Process ID 출력echo $?
: 직전의 프로세스 종료코드 출력.kill
: Process에 Signal을 보내는 명령어kill -l
: signal list 출력kill -9 "pid"
orkill -KILL "pid"
: pid에 해당되는 프로세스 종료.
fg
: 포어그라운드 프로세스로 전환fg "pid"
: pid 에 해당되는 process foreground로 전환.
bg
: 백그라운드 프로세스로 전환wc
: 사용자 입력이나 파일에 대한 word count 통계를 출력.wc < a.txt
: a.txt파일의 개행, 단어, byte 개수를 화면에 출력해줌.
댓글남기기