pwd(print working directory)
현재 위치 확인
mkdir(make directories)
새로운 폴더 생성
ls(list)
특정 폴더에 포함된 파일 혹은 하위 폴더를 출력해줌
ls -a 숨겨져 있는 파일이나 목록을 전부 표현
ls -l 폴더나 파일의 포맷을 전부 표현
ls -al, ls -la처럼 한꺼번에 사용 가능
ls -l 을 하면
drwxr-xr-x
-rw-r--r--
d / rwxr-xr-x
- / rw-r--r--
이런 형식을 보게 되는데
밑의 / 를 기준으로 두 개의 부분으로 나누어서 생각을 하면 좋다
먼저 / 기준 앞 부분은 타입을 구분해준다.
d 는 디렉토리(폴더)를 의미하고
- 는 파일을 의미한다.
/ 기준 뒤는 , 특정 파일 및 폴더에 접근할 수 있는 권한에 대해 보여준다.
'r'은 read의 약자로 읽기 권한을 의미한다. 파일 및 폴더안에 있는 데이터, 속성, 서브 폴더 등에 접근이 가능
'w'는 write의 약자로 쓰기 권한을 의미한다. 파일 및 폴더의 속성과 데이터를 변경할 수 있음
'x'는 execute의 약자로 실행 권한을 의미한다. 해당 파일을 실행하여 사용할 수 있음
'-'는 권한 없음을 나타낼 때 쓰인다.
즉 rwx 는 읽기 쓰기 실행 권한이 있는 것이고, r-x는 읽기 실행 권한은 있지만, 쓰기 권한이 없고, r--은 읽기만 가능한 것이다.
/ 기준 뒤인 권한 부분은 또 3가지로 분류할 수 있는데
drwxr-xr-x
-rw-r--r--
d / rwx | r-x | r-x
- / rw- |r-- | r--
| 기준으로 나누어보면,
첫 번째 부분은 파일 및 폴더를 소유하고 있는 유저가 가지는 접근 권한에 대해
두 번째 부분은 그룹을, 3번 부분은 다른 유저를 특정하고 있다.
분석을 해보자면,
drwxr-xr-x
디렉토리이며, 폴더를 소유하고 있는 사용자에게 읽기와 쓰기 그리고 실행권한이 있다.
그룹과 다른 유저에게는 읽기 실행 권한만 있다.
-rw-r--r--
파일이며, 폴더를 소유하고 있는 사용자는 읽기와 쓰기 권한이 있지만, 실행권한은 없다.
그룹과 다른 유저는 읽기 권한만 있다.
d / rwxr-xr-x
- / rw-r--r--
이런식으로 해석할 수 있다.
open .
현재 위치를 GUI로 실행하는 명령어
cd(change directory)
폴더에 진입하는 명령어
touch
파일 생성하기
cat 파일명
파일의 내용을 출력
rm 파일 or 폴더명 (remove)
폴더나 파일 삭제하기
**명령어 옵션 -r , -f
-r 은 recursive의 약자로 특정 행동을 순환적으로 반복한다.
-f 는 force의 약자로 어떤 행위를 강제한다.
rm 명령어는 파일을 저장하고 있는 폴더를 삭제하지 못하는데, 이때 -r 옵션을 추가하면 파일을 저장하고 있는 폴더도 삭제 할 수 있다.
-f 명령어를 사용하면 보호되거나 존재하지 않는 파일도 강제로 삭제할 수 있다. 그런 이유로 -f 명령어를 사용하실 때는 각별히 주의해야 한다.
이 일과 관련하여 유명하게 있었던 사건이 토이스토리 2 사건이다.
https://www.insight.co.kr/news/336403
실수로 2년간 작업한 데이터 다 날려 개봉 취소될 뻔한 ‘토이 스토리 2’ 제작 비하인드
2년 동안 제작한 데이터 90%가 손실돼 세상의 빛을 보지 못할 뻔한 ‘토이 스토리 2’의 제작 비하인드가 재조명되고 있다.
www.insight.co.kr
rm -rf를 리눅스에 입력하여 2년간 작업한 모든 작업물을 날릴 뻔 했던 것....
mv(move)
폴더나 파일의 이름을 변경, 또는 폴더나 파일의 위치 옮기는 명령어
mv 뒤에는 순서대로 [폴더나 파일의 이름] [도착 폴더의 이름]를 입력해야 한다. (대괄호 생략하고 띄어쓰기만!)
cp(copy)
폴더나 파일을 복사하는 명령어
cp를 사용하는 경우에는, cp [원본 파일 이름] [복사할 파일 이름]을 입력해야 한다.
CLI에서의 경로 이동을 자유롭게 사용하기 위해 경로에 대한 개념을 정리할 필요가 있다.
절대 경로와 상대 경로
절대 경로
- pwd로 확인할 수 있다.
- 절대 경로는 기준점으로부터의 절대적인 위치를 나타내는데, 이 기준점을 루트폴더(/)라고 한다. 절대 경로는 특정 폴더나 파일이 루트폴더로부터 어떤 폴더로 진입하는 경우 만날 수 있는지 나타낸다.
상대 경로
- 현재 위치를 기준으로 상대적으로 파악
- 상대 경로는 특정 폴더 또는 파일의 위치를 현재 위치를 기준점으로 나타낸다. 현재 위치한 폴더는 점(.)으로 표현하고, 상위 폴더는 두 개의 점(..)으로 표현한다.
- (.)은 현재 위치한 폴더를 (/)는 폴더 내부를 가리킨다. (./)는 "현재 폴더 내부의 ~" 라는 의미를 갖고있다.
즉 (./폴더명) 을 입력하면 현재 폴더 내부의 폴더를 가리키는 것이고,
cd ./폴더명 을 입력하면 현재 폴더 내부의 폴더로 이동한다는 명령어가 입력되는 것이다. - cd ..는 상위 폴더로의 이동을 의미한다.
sudo
관리자 권한을 획득하는 명령어
echo
프롬프트 상에 문자열을 출력해주는 명령어, 파일을 간단하게 만들 때도 유용하게 사용
쉘 프로그램 수행 중에 진행상황을 화면 상에 공유할 때도 사용한다.
~/Users/apple $ echo hello\nworld
hello world
~/Users/apple $ echo 'hello\nworld'
hello world
echo 명령어 뒤에 나오는 단어는 문자열로 출력 되는데, 이렇게 인용 부호가 추가 되어도 결과 값은 동일하게 나온다.
echo 명령을 이용해서 여러 라인의 메시지를 출력하기 위해서는 -e 옵션과 함께 문자열 중간에 특수문자 중 줄 바꿈 문자인 \n 을 사용하면
된다.
~/Users/apple $ echo -e hello\\nworld
hello
world
echo 명령어 > [file name]
명령어의 텍스트로 구성된 파일이 생성된다.
~/Users/apple $ echo -e hello\\nworld > hello
~/Users/apple $ cat hello
hello
world
cat 명령어를 이용해 hello 파일을 확인해보면, echo 명령의 결과로 화면에 출력되는 문자열이 hello라는 파일에 저장되어 있는 걸 볼 수 있다.
~/Users/apple $ echo -e hello\\nworld > hello
~/Users/apple $ cat hello
hello
world
~/Users/apple $ echo love > hello
~/Users/apple $ cat hello
love
echo 명령어 > 기존 파일명을 입력하면 기존에 저장되어 있던 텍스트를 새로운 명령어로 변경할 수 있다.
기존 내용을 유지하면서 파일에 새로운 문자열을 추가하고 싶을 땐, >>기존 파일명을 입력하면 된다.
~/Users/apple $ echo -e hello\\nworld > hello
~/Users/apple $ cat hello
hello
world
~/Users/apple $ echo love >> hello
~/Users/apple $ cat hello
hello
world
love
'개발 R.I.P.' 카테고리의 다른 글
5/24 Dev.Feedback (성능 보장 렌더링 순서) (0) | 2021.05.24 |
---|---|
5/22 Dev.Feedback(React. class component vs function component) (0) | 2021.05.22 |
5/19 Dev.Feedback (계산기 구현) (0) | 2021.05.19 |
5/18 Dev.Feedback (Scope) (0) | 2021.05.18 |
5/17 Dev.Feedback(CSS : Box) (0) | 2021.05.17 |