Git 사용을 위해선 Git Bash 사용이 필요하다. (GUI 지원 해 주는 프로그램을 사용해도 무방하다.) Git Bash 는 리눅스 기반이기 때문에, Window의 명령 프롬프트인 cmd와는 동작하는 명령어가 다르기 때문에 리눅스 쉘 에 대한 명령어를 알아야 할 필요가 있다.
git 설치 경로의 etc/bash.bashrc 에서 수정 가능.

pwd : 현재 디렉터리 위치 확인
ls : 디렉터리 내 파일 및 폴더 조회. 옵션으로 ls -la 혹은 ll을 사용하여 전체 내용 조회가 가능함.
ls명령어 사용
ls -la명령어 사용
cd : 디렉터리 이동. 상대경로 혹은 절대경로 개념을 통해 이동함. 폴더 간 부모 자식 관계는 '/'로 구분.
상대경로란?
- 현재 내 경로를 기준으로 잡고 이동함. 주로 .과 ..을 사용하여 이동함. .은 지금 내 위치를 의미하고, ..은 내 상위 폴더를 의미함.
cd ..: 내 상위 폴더로 이동,cd ./newfolder/newfile.exe: 내 폴더의 newfolder 하위의 newifle.exe 실행
절대경로란?
- 최상위 디렉터리를 기준으로 잡고 이동.
cd c:/down: C 드라이브 아래의 down 폴더로 이동
mkdir '디렉터리 이름': 새 디렉터리 생성rm '파일 경로' : 파일 삭제. rm -rf '파일 경로': 디렉터리 삭제.cp '복사 대상' '복사할 위치 + 복사 할 이름' : 파일 복사. 복사 시 파일 이름 변경 가능.cp -r '복사 대상' 복사할 위치 + 복사할 이름': 디렉터리 복사. 복사 시 디렉터리 이름 변경 가능.mv '이동 대상' '이동할 위치 + 이동 후 파일 이름': 디렉터리 및 파일 이동. 이동 시 파일 이름 변경 가능touch '파일 이름': 아무것도 없는 빈 파일 생성.cat '파일 경로 + 파일 이름: 파일을 bash 창에 출력echo '문자열 혹은 환경변수': 출력 용도. 환경 변수의 경우 그 환경 변수에 설정된 값을 출력.export ZSH_CUSTOM="Hello, World": 단발적인 환경변수 설정. 세션단위로 bash창 꺼지면 없어짐. 장기 적용 원할 시 bash.bashrc에 설정 가능.head 파일 이름: 파일 첫 라인 출력head -n 10 '파일 이름': 위에서 10번째 줄 까지 출력. head -10으로도 사용 가능.tail 파일 이름: 파일 끝 라인 출력.tail -n 10 '파일 이름': 아래서 10번째 줄 까지 출력. head와 동일하게 사용tail -f '파일 이름': 파일의 끝 부분을 실시간으로 출력 해줌. 주로 로그 출력에 사용.기존의 명령어들 사용 후, |(\표시 shift, 파이프 기호라고 함)를 사용하여 추가 명령어를 쌓을 수 있음. 꼬리물기 느낌으로, 앞의 명령어를 수행하고, 거기서 나온 결과를 기반으로 파이프 기호 뒤 명령어를 수행.

grep '검색할 내용 이름': 문자열 중 특정 정규 표현식 조건 검색.
-E: 정규표현식 사용 가능-i: 대소문자 구분 없음-n: 검색된 라인 넘버 표기'출력 기능' > '파일 경로 및 이름': 출력된 내용을 해당 파일에 덮어씀.'출력 기능' >> '파일 경로 및 이름': 출력된 내용을 해당 파일에 추가함.chmod '파일권한 숫자 지정' '대상 파일': 해당 파일의 권한을 변경함. 리눅스 파일 시스템의 경우, Owner + Group + Other 로 사용자를 구분한다.
파일 권한 관련
해당 사진에서 밑 줄 쳐진 부분이 해당 파일에 대해 다른 사용자들이 어떠한 권한을 가지고 있는지 확인할 수 있음.
- r: Read. r이 있으면 읽을 수 있다는 의미.
- w: write. w가 있으면 해당 파일을 변경 및 저장할 수 있다는 의미.
- x: excute. x가 있으면 해당 파일을 실행할 수 있다는 의미.
빨강 : Owner. 파일의 소유자. 파일의 생성자를 의미함.
노랑 : Group. 파일 생성자의 그룹 소유자.
파랑 : Other. 위 두 가지에 해당되는 사람들을 제외한 나머지 사람들의 권한.
chmod 777 test.txt: 위의 정보를 바탕으로, 해당 명령어를 통해 사용자 별 파일 권한 변경이 가능함. 숫자가 3개 있는데 해당 숫자는 차례대로 Onwer, Group, Others 며, 숫자가 7인 이유는 해당 권한의 자리가 3자리인데(read, write, excute), 해당 자리수를 2의 제곱으로 계산하여 처음부터 각각 4,2,1의 값을 가지게 된다. 그래서 read, write, excute를 다 허용 해 주려면 4+2+1 = 7 이 되고, 위에 chmod 명령어 다음의 숫자에 적용할 수 있다.
chmod 770 test.txt 이런 식으로 적용할 수 있음혹은 u(user), g(group), o(others), a(all) + r, w, x 를 조합해서 사용 할 수도 있음.
chmod +x test.txt
**`윈도우라서 적용이 안되는 거 같다. ㅜㅜ`**
tar xvf '압축 파일 이름': Linux에서 지원하는 압축 파일인 Tar 확장자 파일의 압축 풀기
-x: eXtract = 압축 풀기 <-> -c: Create = 압축 하기 -v: verbose = 어떤 파일이 풀리는 지 상세히 보기-f: file name 지정-sudo: super user 권한을 얻을 수 있음. (Linux 내 최상위 권한을 가진 계정)
vi '파일 이름' 혹은 vim '파일 이름': 해당 파일을 수정이 가능한 shell 지원 에디터인 vim 을 통해 열기.📑 출처 및 참조
[ASAC] 강의 자료
chatGPT