[linux] shell command 정리 (1)

반디·2023년 4월 26일
0

개발기

목록 보기
3/16

기본 shell command 정리

명령어기능옵션 및 비고
man매뉴얼 문서 확인
mkdir폴더 생성하기
ls현재 접근한 폴더의 파일 확인-l: 퍼미션, 소유자, 생성일, 용량 출력
h: 용량을 GB, MB 등으로 표현
-a: 전체 파일 출력
pwd현재 폴더 경로를 절대 경로로 보여줌
cd폴더 변경하기
echo터미널에 텍스트 출력shell command 입력 시, command의 결과를 출력
cp파일 또는 폴더 복사하기-r: 재귀적으로 디렉토리 안의 파일을 모두 복사
-f: 복사 강제 실행
sudo관리자 권한으로 명령어를 실행
mv파일, 폴더 이동하기, 이름 변경
clear터미널 창 clear
historycommand 히스토리 출력!+숫자를 이용해서 특정 커맨드 활용 가능
find파일 및 디렉토리 검색
export환경변수 설정터미널이 꺼지면 사라지게 됨 (.bashrc, .zshrc에 저장하면 쉘이 실행될때마다 재설정됨)
alias특정 명령어의 별칭 확인 및 설정
tree폴더의 하위 구조를 계층적으로 표현

vi

vim 편집기로 파일을 생성하는 명령어

  • command/insert/last line mode
    • insert 모드에서만 수정가능
모드기능옵션 및 비고
command기본 mode, 방향키로 커서 이동dd: 현재 위치한 한 줄 삭제
i: insert 모드로 변경
x: 커서가 위치한 곳의 글자 1개 삭제
yy: 현재 line을 복사
p: 현재 커서가 있는 줄 바로 아래 붙여넣기
k: 커서 위로
j: 커서 아래로
l: 커서 오른쪽으로
h: 커서 왼쪽으로
insert파일을 수정할 수 있는 modeESC로 command mode로 전환
last lineESC+: 으로 진입하여 파일 수정/저장w: 현재 파일명으로 저장
wq: 저장 후 vi 종료
q: vi 종료 (저장 X)
q!: vi 강제 종료
/문자: 문자 탐색
set nu: vi 라인 번호 출력

cat

특정 파일의 내용을 출력하는 명령어

  • 여러 파일을 인자로 넘겨 합쳐서 출력
cat file1.txt file2.txt 
  • 파일에 overwrite
cat file1.txt file2.txt > new_file.txt
  • 파일에 append
cat file1.txt file2.txt >> new_file.txt

cf. head: 파일의 앞/뒤 n 행 출력

Example

sort, uniq, cut

명령어기능옵션 및 비고
sort행 단위 정렬-r: 내림차순 정렬
-n: numeric sort
uniq중복된 행이 연속으로 있는 경우 중복 제거-c: 중복 행의 갯수 출력
cut파일에서 특정 필드 추출-f: 잘라낼 필드를 지정
-d: 필드를 구분하는 구분자 (기본값: \t)

Example

cat animals.txt|sort|uniq|wc -l
cat test_file | cut -d : -f 1,7 #1번째, 7번째 값을 가져옴 

grep

명령어기능옵션 및 비고
grep파일에서 주어진 패턴 목록과 매칭되는 라인 검색-i: 대소문자 구분 없이 찾기
-w: 정확히 그 단어만 찾기
-v: 특정 패턴을 제외한 결과 출력
-E: 정규 표현식 사용

Example

grep -i "a" test_file
profile
꾸준히!

0개의 댓글