Git

HYEON17·2022년 12월 15일
0

TIL

목록 보기
1/17

GitBash

Shell 명령어

cd

  • cd는 "change directory"의 약자로 특정 디렉토리로 이동하고 싶을 때 사용.
  • cd 뒤에 가고 싶은 디렉토리 경로를 입력.

    cd <가고자 하는 디렉토리 경로>
    cd # 사용자 디렉토리로 이동
    cd / # root 디렉토리로 이동
    cd .. # 상위 디렉토리로 이동
    cd Desktop/wecode # Desktop 하위 wecode 디렉토리로 이동

  • 사용 예시

ls

  • ls는 "list"의 약자로, 현재 디렉토리에 속한 파일 및 디렉토리를 나열.

    ls #현재 디렉토리에 있는 내용 출력
    ls -a # 숨겨진 파일이나 디렉토리도 함께 보여줌
    ls -l # 자세한 내용(권한, 포함된 파일 수, 소유자, 그룹, 파일크기, 수정일자, 파일이름)
    ls -al # a와 l의 기능을 모두 포함
    ls -h -al # -h를 붙이면 K, M, G 단위의 파일크기를 사용하여 보기 좋게 표시

  • 사용 예시

mv

  • mv는 "move"의 약자로 파일이나 디렉토리를 원하는 곳으로 옮기거나, 이름을 변경할 때 사용할 수 있는 명령어.

    mv <원본 파일명> <옮기고 싶은 디렉토리명> # 해당 디렉토리로 파일 이동
    mv <원본 파일명> <바꾸고 싶은 파일명> # 원본 파일 이름 변경
    mv <원본 디렉토리명> <옮기고 싶은 디렉토리명> # 해당 디렉토리로 디렉토리 이동
    mv <원본 디렉토리명> <바꾸고 싶은 디렉토리명> # 원본 디렉토리 이름 변경
    #두 번째에 있는 옮기거나 바꾸고 싶은 파일/디렉토리명이 존재하면 '이동'이 진행되고, 없으면 '이름 변경'이 진행됨

  • 사용 예시

cp

  • cp는 "copy"의 약자로 파일이나 디렉토리를 원하는 곳에 원하는 이름으로 복사할 수 있는 명령어.

    cp <원본 파일명> <옮기고 싶은 디렉토리명> # 해당 디렉토리로 원본 파일 복사
    cp <원본 파일명> <복사해서 만들고 싶은 파일명> # 해당 파일명으로 사본 파일 생성
    cp <원본 파일명1> <원본 파일명2> <옮기고 싶은 디렉토리명> # 여러 파일을 한 번에 해당 디렉토리로 복사
    cp <원본 디렉토리> -r <옮기고 싶은 디렉토리명> # 원본 디렉토리의 하위 파일까지 모두 해당 디렉토리로 복사
    cp <원본 디렉토리> -r <복사해서 만들고 싶은 디렉토리명> # 위의 방식을 응용해서 복사해서 만들고 싶은 디렉토리 생성

  • 사용 예시

cat

  • cat은 "concatenate"의 약자로 두 개 이상의 파일을 연결해서 출력할 때 사용
  • 하나만 출력도 가능

    cat <파일명1> <파일명2> ... # 기본적인 사용방법. 두 개 이상의 파일을 연달아 출력함
    cat <파일명> # 파일의 내용 출력

  • 사용 예시

rm

  • rm은 remove의 약자로 파일과 디렉토리 삭제에 사용되는 명령어

    rm <파일명> # 해당 파일을 삭제
    rm .txt # .txt로 끝나는 모든 파일을 삭제
    rm
    # 전체 파일 삭제
    rm -r <파일명/디렉토리명> # 해당 파일/디렉토리 삭제
    rm -rf <파일명/디렉토리명> # 해당 파일/디렉토리 강제 삭제(경고문구 없이 삭제)

  • 사용 예시

mkdir

  • mkdir은 "make directory"의 약자로 새로운 디렉토리를 만들 수 있는 명령어.

    mkdir <새로운 디렉토리명> # 해당 경로에 새로운 디렉토리를 만들어줌
    mkdir -p <새로운 디렉토리명 +"/" + 새로운 하위 디렉토리명> # 하위 디렉토리까지 함께 생성
    mkdir -p dir1/subdir1 # dir1이라는 새로운 디렉토리와 그 안에 하위 디렉토리인 subdir1까지 함께 만들어줌

  • 사용 예시

touch

  • 디렉토리 안 새로운 파일을 생성해주는 명령어
  • 사용 예시

clear

  • 쉘 창에 있는 기록을 모두 지워준다

pwd

  • pwd는 "print working directory"의 약자로 현재 작업 중인 디렉토리의 절대 경로를 반환
  • 사용 예시

Vim

  • Linux의 대표적인 텍스트 편집기 vi와 호환되는 텍스트 편집기
  • vim은 4가지 모드로 구성
    1. 일반(Normal)모드 or 명령(Command)모드
    2. 명령줄 모드(Command Line Mode)
    3. 편집/입력모드(insert mode)
    4. 비쥬얼 / 선택모드(Visual)

1. 일반(Normal)모드 or 명령(Command)모드

사용자가 키보드를 통해서 타이핑하는 모든 내용을 하나의 명령으로서 받아들이는 모드

  • 해당 모드에서는 사용자가 키보드로 입력하는 모든 내용을 명령으로 인식하게 된다. 해당 모드에서는 하나의 문자도 명령으로 인식
  • vim이 평소 기본으로 설정되어 있는 모드이며, 기준적인 모드(다른 모드로 가기 위해서는 무조건 이 모드를 거쳐야 한다.)

2. 명령줄 모드(Command Line Mode)

사용자가 입력한 문장이 특정 명령어가 되는 모드

  • 명령줄 모드에서는 사용자가 타이핑한 키가 명령이 되는 명령모드와 달리 사용자가 완성한 문장이 특정한 명령어가 된다

3. 편집/입력모드(insert mode)

입력하는 모든 내용들이 문서의 내용이 되는 모드, 단순히 타이핑할 수 있는 모드에 해당한다.

  • 어떤 문서파일을 수정하거나 만들기 위해서는 해당 모드로 진입

4. 비쥬얼 / 선택모드(Visual)

문서를 구성하는 특정 부분의 내용을 선택할 때 사용하는 모드

모드간의 전환

  • 편집/입력(Insert) 모드로 넘어갈 때 i를 사용한다.
  • 다른 모드로 변경하기 위해서는 무조건 명령모드를 거쳐서 돌아가야 한다.
  • 명령모드로 다시 돌아가려면 Esc 키를 누르면 된다.

vi 시작 명령어

명령어설명예제
vi {파일명}파일열기, 작성vi test.txt
vi +{행번호} {파일명}파일을 열고, 입력한 행으로 커서 이동vi -100 test.txt
vi +/"{검색 문자열}" {파일명}“문자열”의 처음발생 단어부터 열기vi -/"adc" test.txt
vi –r {파일명}손상된 파일 회복vi -r test.txt
view {파일명}읽기 전용으로 열기기view test.txt

vi 커서 이동

커서설명
h (←)왼쪽으로 커서 이동
j (↓)아래로 커서 이동
k (↑)위로 커서 이동
l (→)오른쪽으로 커서 이동
e오른쪽 한 단어의 끝 부분으로 커서 이동
w오른쪽 한 단어의 앞 부분으로 커서 이동
b왼쪽 한 단어의 앞 부분으로 커서 이동
Enter한 행 아래로 커서 이동
Back space한 문자 왼쪽으로 커서 이동
Space Bar한 문자 오른쪽으로 커서 이동
^행의 맨 왼쪽으로 커서 이동
$행의 맨 오른쪽으로 커서 이동
H화면의 맨 위로 이동
M화면의 중간으로 이동
L화면의 맨 아래로 이동
숫자G‘숫자’ 만큼 지정한 줄로 커서 이동
Ctrl + i한 화면 위로 이동
Ctrl + b한 화면 아래로 이동
Ctrl + d반 화면 위로 이동
Ctrl + u반 화면 아래로 이동
Ctrl + e한 줄씩 위로 이동
Ctrl + y한 줄씩 아래로 이동

신규 파일 생성

  • vi {파일명}명령어로 입력했을 때, 입력한 파일명이 실제 존재 하지 않는 경우 파일을 생성.

문자, 행, 삽입 명령어

커서설명
a커서 오른쪽에 문자 삽입
A커서 오른쪽, 행의 끝에 문자 삽입
i커서 왼쪽에 문자 삽입, insert mode
I커서 왼쪽, 행의 처음에 문자 삽입
o커서 아래에 행 삽입
O커서 위에 행 삽입
ESC종료, Normal mode

텍스트 변경 명령어

명령어설명
cw단어 변경
cc행 변경
C커서 오른쪽의 행 변경
s커서가 위치한 문자열 대체
S커서가 위치한 라인의 문자열 대체
r커서 위치 문자를 다른 문자로 대체
r-Enter행 분리
J현재 행과 아래 행 결합
xp커서 위치 문자와 오른쪽 문자 교환
~문자형(대, 소문자) 변경
u이전 명령 취소
U행 변경 사항 취소, 이전의 최종 행 취소
.이전 최종 명령 반복

텍스트 삭제 명령어

명령어설명
x커서가 있는 문자 삭제
nx커서가 있는 위치부터 n개의 문자를 삭제
dw현재 커서에 있는 한 단어 삭제
dd커서가 있는 라인 삭제
ndd커서가 있는 라인부터 n개의 라인 삭제
db커서의 위치에서 거꾸로 한 단어 삭제
D커서 오른쪽 행 삭제
:5,10d5~10번째 행 삭제

복사 및 이동 명령어

명령어설명
yy커서가 위치한 줄 복사
Y행 yank 또는 복사
yh커서의 왼쪽 문자 복사
yl커서에 위치한 문자 복사
yi커서가 위치한 줄과 그 아랫줄 복사
yk커서가 위치한 줄과 그 윗줄 복사
pyank 되거나 삭제된 행 현재 행 위로 삽입
Pyank 되거나 삭제된 행 현재 행 아래에 삽입
:1,2 co 31~2행을 3행 다음으로 복사
:4,5 m 64~5행을 6행 위로 이동

보관 및 종료 명령어

명령어설명
:w변경사항 저장
:wq변경사항 보관 후 vi 종료. ZZ 명령과 같음. :w(기록)과 :q(종료) 를 연속적으로 수행.
:q!변경사항 보관하지 않고 종료
q수정한 파일을 저장하지 않고 vi 종료

vi/vim 단축키 모음

profile
프론트엔드 개발자

0개의 댓글