유닉스 커맨드

LeeKyungwon·2024년 3월 12일
0

프론트엔드 

목록 보기
8/56
post-custom-banner

man 커맨드
: 매뉴얼로 설명 나옴

꿀팁
화살표 위쪽 키 : 전에 사용했던 커맨드를 또 입력해야 할 때
ctrl + a : 줄 가장 앞 부분으로 커서 이동
ctrl + e : 줄 가장 뒷 부분으로 커서 이동
Option + 앞 뒤 방향키 : 단어 앞 뒤로 이동
ctrl + c : 작업 종료
clear : 터미널 내용 지우기
탭 키 : 쓰고 있는 커맨드 자동 완성

유닉스 디렉토리 구조

파일 경로

root에서부터 /로 계속 접근
/usr/bin/python3 이런 식으로

pwd, cd, ls

pwd : 현재 디렉토리의 경로 출력
cd [path]: 다른 디렉토리로 이동

cd / 

->루트 디렉토리로 이동

cd ~
cd

-> 홈 디렉토리

cd -

-> 이전 경로로 돌아감

ls : 디렉토리의 내용물을 리스트해서 보여줌

절대 경로와 상대 경로

  • 절대경로 : 루트 디렉토리를 기준으로 어떤 파일이나 디렉토리의 고유한 경로를 표시하는 것
  • 상대경로 : 현재 자신이 위치해 있는 디렉토리 기준으로 경로를 나타내는 것
    현재 디렉토리를 .으로 표시
    상위 디렉토리를 ..으로 표시

파일, 디렉토리 이름에 공백이 있을 경우
'' 사용, ""사용 \ 사용 cd hello\ world

ls의 중요한 옵션들

a 옵션

ls -a
이걸 쓰면 .으로 시작되는 숨겨진 파일들까지 다 나옴

l 옵션

ls -l : 더 많은 정보가 나옴

디렉토리와 파일 만들기

mkdir

디렉토리 만들 때 사용

mkdir 디렉토리 경로

절대 경로, 상대 경로 둘 다 OK

mkdir ~/unix_practice //절대경로
mkdir unixpracice //상대경로

touch

파일을 접근 시간이나 수정시간 업데이트 할 때 사용
파일이 없으면 파일을 생성함

touch a.txt Aug/b.txt

여러개도 가능

CLI 텍스트 에디터 vim

실행 방법

vim

아무 아규먼트가 없으면 파일 생성, 아규먼트 있으면 파일 수정

  • 일반 모드(esc) : 커서 이동, 텍스트 붙여넣기, 작업 취소
  • 입력 모드(i) : 텍스트 입력
  • 비주얼 모드(v,V) : 텍스트 블록 지정, 텍스트 복사
  • 명령 모드(:) : 내용 저장, Vim 종료
    esc : 일반모드로 이동

vim으로 파일 작성

텍스트 입력 : i를 눌러 입력 모드로 전환 후 텍스트 입력

텍스트 한 줄 복사: 일반 모드 → 복사하고 싶은 줄에 커서 위치 → yy
텍스트 한 줄 잘라내기: 일반 모드 → 잘라내고 싶은 줄에 커서 위치 → dd
특정 영역 복사: 비주얼 모드(V는 줄 단위, v는 글자 단위) → 복사하고 싶은 영역 커서로 설정 → y
특정 영역 잘라내기: 비주얼 모드(V는 줄 단위, v는 글자 단위) → 잘라내고 싶은 영역 커서로 설정 → d
텍스트 붙여넣기: 일반 모드 → 붙여넣고 싶은 위치에 커서 위치 → p

잘라내기 : 앞 부분은 복붙과 똑같고 d 누르고 p 누르기

yy : 한줄 단위 복사 dd : 한줄 단위 잘라내기

파일 저장 : 커맨드 모드 :w
파일 처음 만들 때는:w 파일이름
빔 종료 : :q
저장과 동시에 종료 ::wq
수정사항 저장 안하고 나가려면 느낌표 사용 :q!

파일 내용 살펴보기

cat

concatenate : 파일 내용들 출력

cat hello.txt bye.txt

여러 파일 내용을 한꺼번에 볼 수도 있음

less

페이지 별로 나눠서 보여줌

less hello.txt

단축키:

  • 줄 이동: 위쪽 / 아래쪽 방향키
  • 다음 페이지: space 아니면 f
  • 이전 페이지: b
  • 마지막 페이지: G
  • 처음 페이지: g

head, tail

파일의 시작 부분과 끝 부분 확인
첫 10줄, 마지막 10줄이 보임
출력할 줄 개수를 지정해 줄 수도 있음

head -n 5 bohemian_rhapsody

-> 첫 5줄 나옴
tail도 같은 방식으로

파일과 디렉토리 옮기기 & 이름 변경하기

mv

mv path1 path2

path1 : 작업할 대상의 경로
path2 : 이동할 목적지 또는 변경할 이름; (이미 존재하는 디렉토리 경로일 경우 디렉토리 안으로 이동, 그렇지 않으면 이름 변경)

Aug Jul Sep

mv Sep Oct

Aug Jul Oct

mv Jul Aug

->Jul이 Aug 안으로 들어감

mv Aug/Jul .

->Jul이 현재 위치로 이동

mv 사용시 주의할 점

이미 있는 파일과 같은 이름을 쓸 경우 파일을 덮어쓴다.
이런 현상을 방지하고 싶으면 i 사용

mv -i test1.txt test2.txt

-> 덮어쓸거냐고 물어봐준다.

파일과 디렉토리 복사 붙여넣기

cp path1 path2

path1 : 복사할 대상의 경로
path2 : 복사할 위치
-> path2가 존재하면 안으로 복사, 존재하지 않으면 path2 이름을 가진 파일 또는 디렉토리 생성

목적지에 똑같은 이름의 파일이 있으면 덮어쓴다.
덮어쓰기 방지하려면 i 사용 (mv랑 똑같이 사용)

디렉토리 복사
r 옵션을 줘야 함

cp -r Jul Jul_copy

r : 재귀적이다(자신이 자신을 반복적으로 호출). 자식 디렉토리까지 복사

파일과 디렉토리 삭제

rm(remove)사용

rm path path2 path3 ...

path : 삭제할 파일 또는 디렉토리 경로
path2, path3 : 경로를 여러 개 줄 수 있다.(여러개 한꺼번에 삭제 가능)

디렉토리 지울 때
r 옵션 사용해야 함

rm -r warning

-ri -> 각 파일들을 지울건지 물어봄

post-custom-banner

0개의 댓글