본문 바로가기
발전로그/개발로그

자주쓰는 linux 명령어

by 4lleycat 2021. 12. 29.

- 탐색관련

pwd : 현재 디렉토리 경로 표시

$pwd

cd : 탐색할 디렉토리 위치를 변경

$cd 경로 (입력한 하위경로 이동)
$cd /디렉토리 (절대 경로 이동) 
$cd ../(상위경로 이동) 
$cd /(루트 이동) 
$cd ~ (홈 이동)

ls : 현재 디렉토리 폴더및 파일 목록

$ls -옵션 경로 
$ls -a : 경로내 모든파일,폴더 출력(숨김포함) 
$ls -l : 파일의 상세한 정보 
$ls -lh: 파일의 용량 출력 
$ls -S: 크기순으로 출력 
$ls -r: 크기역순으로 출력 
$ls -t: 시간 순으로 출력 
$ls -F: 파일과 디렉토리를 구별해서 출력 
$ls -x: 정렬순서를 가로로 출력 
$ls -u: 최종적으로 사용된 시간

- 파일및 디렉토리 관련

cp : 파일및 디렉토리 복사

$cp -옵션 [원본] [복사본] $cp -a : 원본파일의 속성, 링크 정보를 그대로 유지 $cp -b : 같은 이름의 파일이 있을 때 백업파일 생성 후 복사 $cp -f : 같은 이름의 파일이 있을 때 삭제 후 복사 (덮어쓰기) $cp -u: 같은 이름의 파일이 있을 때 변경날짜가 같거나 최근이면 복사하지 않음 (업데이트) $cp -i : 같은 이름의 파일이 있으면 사용자에게 물어본다 $cp -r: 하위 디렉토리까지 복사 $cp -p: 권한까지 복사 $cp -v: 복사 과정을 보여준다

mv : 파일및 디렉토리 이동

$mv -옵션- [원본] [이동할 위치, 혹은 새 파일명] 
$mv -b: 같은 이름의 파일이 있을 때 백업파일 생성 후 이동 
$mv -f: 같은 이름의 파일이 있을 때 삭제 후 이동 (덮어쓰기) 
$mv -i: 같은 이름의 파일이 있으면 사용자에게 물어본다 
$mv -v: 이동 과정을 보여준다

rm : 파일 및 디렉토리 삭제

$rm -옵션[삭제 할 디렉토리또는 파일] 
$rm [삭제대상] [삭제대상] [삭제대상] : 여러 대상 삭제 
$rm -f : 강제로 파일이나 디렉토리를 삭제하고 대상이 없는 경우에는 메시지를 출력하지 않습니다. 
$rm -r : 디렉토리 내부의 모든 내용을 삭제합니다. 
$rm -d : 비어있는 디렉토리들만 제거 
$rm -i : 매번 삭제할때마다 사용자에게 삭제할것인지 묻습니다. 
$rm -v : 삭제되는 대상의 정보를 출력합니다. 
$rm -rf * : 현제 디렉토리 위치 모든파일 제거

mkdir : 디렉토리 생성

$mkdir -옵션 [디렉토리 명] 
$mkdir -e : 암호화 상속으로 디렉토리를 작성 
$mkdir -m : 생성 디렉토리에 지정권한으로 생성 (예: 755) 
$mkdir -p : 누락된 중간 경로 이름 디렉토리를 작성

rmdir : 비어있는 디렉토리 삭제

$rmdir -옵션- [디렉토리 명] 
$rmdir -p : 상위 디렉터리 비어 있을 경우 상위 디렉터리도 함께 삭제

cat(concatenate) : 파일 출력, 파일이어서 출력

$cat -옵션 (> 혹은 >>) [파일명] 
$cat -옵션 [파일명] [파일명] [파일명] : 여러파일 출력 
$cat -옵션 [파일명] [파일명] > [파일명] : 앞에 두파일을 뒤에 입력한 하나의 파일로 합쳐서 출력 
$cat -옵션 [파일명] >> [파일명] : 앞에 파일내용을 뒤에 파일에 덧붙여 출력 
$cat -n : 행 번호를 출력한다 
$cat -b : 빈 행에는 번호를 출력하지 않는다 
$cat -e : 각 행 끝에 $를 단다 
$cat -s : 연속 되는 빈 행을 하나로 출력한다.

head : 파일 시작부분 출력
tail : 파일 끝부분 출력

$head -n [출력할 라인수] [파일 명] (기본 10줄) 

$tail -n [출력할 라인수] [파일 명] 
$tail -c [바이트 수] [파일 명] : 보여줄 바이트 수 지정 
$tail -f [파일 명] : 파일의 마지막 10줄을 새라인 추가될때 마다 출력.

gzip : 파일압축

$gzip -옵션 [압축파일명] [압축파일명] 
$gzip -n : n은 1부터 9까지 숫자로, 1이 가장 빠르지만 압축율은 가장 낮음 
$gzip -c : 압축 결과를 출력하고 원본파일은 그대로 나둠 
$gzip -d : 압축 해제 $gzip -f : 강제 압축 
$gzip -l : 압축 파일의 정보 출력 
$gzip -r : 디렉토리를 지정 시 디렉토리에 포함된 모든 파일 압축 
$gzip -t : 압축 파일 테스트 
$gzip -v : 압축 혹은 해제시 자세한 정보 출력 
$gzip -h : 도움말 출력 
$gzip -V : 버전 정보 출력

tar : 파일을 하나로 모은다

$tar –옵션 [압축파일명] [압축할파일 혹은 디렉토리] 압축 할 때 
$tar -c : 묶음 파일 생성 
$tar -x : 묶음 파일 해제 
$tar -v : 작업내용 출력 
$tar -p : 권한을 그대로 유지 
$tar -z : gzip형식으로 압축 혹은 압축해제 
$tar -f : 사용할 파일의 tar지정

- 파일  및 디렉토리 권한관련

chmod : 권한변경

$chmod [권한번호] [변경할 파일 또는 디렉터리]
$chmod 소유자 그룹 기타사용자 [변경할 파일 또는 디렉터리]
$chmod 7(소유자:모든권한)5(그룹:읽기/실행)0(기타사용자:권한없음) [변경할 파일 또는 디렉터리] : 예시

chown : 소유자 변경 (루트사용자만 변경권한있음)

$chown -옵션 [소유자명] [변경할 파일 또는 디렉터리]
$chown -옵션 [그룹명].[소유자명] [변경할 파일 또는 디렉터리]
$chown -R [소유자명] [변경할 파일 또는 디렉터리] : 하위 디렉토리까지 변경

- 파일 검색관련

find : 크기나, 수정된 날짜 등 지정한 조건에 맞는 파일들 검색

$find -옵션 (경로) [조건] 
$find -name [파일명] : 이름으로 검색한다. 
$find -user [아이디] : 소유자로 검색한다. 
$find -amin -숫자 : 숫자 분 이내에 접근한 파일을 검색한다. 
$find -atime -숫자 : 숫자 일 이내에 접근한 파일을 검색한다. 
$find -ctime -숫자 : 숫자 일 이내에 상태가 변경된 파일을 검색한다. 
$find -mtime -숫자 : 숫자 일 이내에 수정한 파일을 검색한다. 
$find -perm [조건] : 권한이 조건에 맞는 파일을 찾는다. 
$find -size [조건] : 파일 크기가 일치하는 것을 찾는다. 
이 때 숫자 뒤에 +를 붙이면 해당 크기 이 상을, -를 붙이면 해당크기 이하를 의미한다. 
또한, 숫자뒤에 k를 붙이면 kb, m을 붙이면 메가 바이트를 의미한다. 
$find -newer [파일명] : 해당파일보다 이후에 갱신된 모든 파일을 검색한다. 
$find -exer [명령] {} \; : 원하는 검색 조건에 맞는 파일들을, 주어진 명령으로 실행한다.

grep : 파일내에 조건으로 주어진 문자열 검색

$grep -옵션 [단어] [파일명.확장자]
$grep -옵션 [단어] *[와일드카드]
$grep -c : 파일이 아닌, 총 숫자를 출력
$grep -C 숫자 : 일치하는 행에서 위와 아래로 지정한 숫자만큼의 행을 추가로 더 보여준다.
$grep -A 숫자 : 일치하는 행에서 아래로 지정한 숫자만큼의 행을 추가로 더 보여준다.
$grep -i : 대소문자를 구분하지 않는다
$grep -n : 파일내 행 번호를 함께 출력한다.
$grep -v : 지정한 문구와 일치하지 않는 것들을 보여준다.
$grep -r : 하위 디렉토리까지 검색
$grep -b : 블록 번호 표시

- 명령어 관련

which : 명령어를 검색 (명령어가 있는지)

$which [명령어]

whereis : 명령어의 소스코드위치, 매뉴얼, 파일위치 검색

$whereis -옵션 [명령어]
$whereis -b : 바이너리 파일만 찾음 
$whereis -m : 매뉴얼만 찾음 
$whereis -s : 소스코드만 찾음 
$whereis -u : 특정 파일을 제외 
$whereis -B : 바이너리 파일의 위치를 제한 
$whereis -M : 매뉴얼 페이지의 위치를 제한 
$whereis -S : 원본 파일의 위치를 제한 
$whereis -f : -B, -M, -S 옵션에 디렉토리를 지정 다음, 이 옵션에서 파일명을 지정

- 프로세스 관련

ps : 실행중인 프로세스 확인

$ps -옵션 
$ps -e: 모든 프로세스를 표시
$ps -f : 전체 경로로 프로세스를 표시
$ps -l : 긴 포맷으로 출력
$ps -u : 실행한 유저 및 실행 시간을 표시
$ps -a : 다른 유저의 프로세스도 표시
$ps -x : 터미널 제어 없이 프로세스 현황 보기

kill : 프로세스 종료

$kill –시그널 [PID]
$kill –1 [PID] : (SIGHUP) 재시작
$kill –2 [PID] : (SIGINT) 중지
$kill –3 [PID] : (SIGQUIT) 키보드 종료
$kill –9 [PID] : (SIGKILL) 강제 종료
$kill –15 [PID] : (SIGTERM) 정상 종료
$kill –19 [PID] : 강제 중지

- 네트워크 관련

ifconfig : IP확인 및 설정

$ifconfig [interface][option][address][up/down]



출처 참고 :

https://steven-life-1991.tistory.com/6?category=789381