지금 배우는건 fundamental : 기본 명령어같은것을 배운다.
account, permission(ownership), file management, fs(file system)을 배우게 될 것이다.
Shell
-
user interface
- 사용자가 리눅스를 사용하기 위해서 필요한 중개자 역할을 하는 프로그램
-
2가지 갈래
- GUI : Graphic User Interface.. 그림으로 사람들이 보고 쉽게 편리하게 사용할 수 있는 인터페이스.
- CUI : Console User Interface.. 순수하게 글자만을(ASCII code) 이용하여 사용하는 인터페이스.
-
인터페이스 이동
-
GUI에서 CUI로 이동하는 방법
- ctrl + alt + shift + F1~F6
- tty창은 total 6개..(단, 하나의 콘솔에서..)
- 일반적으로 1st tty부터 쓴다.
- 원격접속은 얼마든지 많이 할 수 있다.
- 각기 창은 tty라는 차으이 형태로 표현되고 하나의 콘솔에는 6개의 CUI 창이 존재한다.
-
CUI에서 CUI로 이동하는 방법
- alt + F1~F6
-
CUI에서 GUI로 이동하는 방법
- alt + F7
-
-
shell
- os의 다양한 기능을 사용하기 위해서, 사용자에게 제공되는 인터페이스를 말한다. 논리구조성 kernel을 감싸고 있기 때문에, shell이라는 이름이 붙게 되었다.
기본 명령어
-
pwd : 현재 작업 위치를 알수 있게 하는 명령어. 대소문자 구분. 파일과 디렉토리는 전부 파일로 인식한다.
모든 계정은 로그인시, 자신의 home디렉토리에 위치하게 된다.
~ 라는 것이 디렉토리명에 있으면 home디렉토리에 있게 된다.
- data : 현재 시간을 출력
- cal : 현재 달력을 출력한다.
-
uname : 현재 쓰는 OS가 뭔지를 알려준다.(실무에서 때에 따라서는 unix일수도 있기 때문에..)
모든 명령어는 옵션을 집어 넣을 수 있다.
ex) uname -[option]
ex) uname -a : 자세한 정보
gnu? : Gnu is Not Unix
-
clear : 화면을 청소한다.
shift + page up : 이전의 것을 볼 수 있다.
-
;(세미콜론) : 한줄에 많은 명령어를 수행하기 위해서 사용
ex) pwd;cal;uname -a
-
ls : 도스의 dir.. 현재 디렉토리의 팡리 정보를 출력하는 명령어
-
옵션
-
-F : 파일 종류를 기호로써 확인
- 파란색 : 디렉토리
- 하늘색 : 링크파일
-
-a : 해당 디렉토리 내의 모든 파일을 확인할수 있다.(숨김파일까지 표현 가능)
- .xxx : 숨김파일을 나타낸다.
- -l : 파일에 대한 정보를 자세히 출력한다.
- -c : 파일이 변경된 시간 순으로 출력
-
-
-
cd : 디렉토리 이동
-
-
설명
-
- 작업을 위해 원하는 디렉토리 위치로 이동하기 위한 명령어
- 상대경로와 절대경로를 이용.
-
상대경로
- .(dot)/하위경로 : .(dot)은 자신의 경로를 나타냄
- .(dot)는 생략할수도 있다.
- ..(double dot)은 상위 경로를 나타낸다.
- ex) ../.. : 2개 위의 상대경로로 이동.
- 절대경로 : 진짜 전부 다 쓰려고 해야한다
-
- file : 파일의 종류를 자세하게 확인할 때 사용하는 명령어
-
wc : word count
- 지정한 파일의 line, word, character 들의 수를 출력한다.
- 누군가 고정된 파일을 수정했을 시 손쉽게 정보 확인용으로 사용하는 명령어.
- 명령어를 사용하면 기본적으로 3가지의 정보가 정부 출력되지만, 옵션을 사용하여 원하는값만 출력할 수 있다.
-
옵션
- 옵션은 이니셜을 사용한다.
- ex) wc -c /etc/passwd
- -l : 파일 내부 줄 수를 출력한ㄷ.
- -w : 파일 내부 단어 수를 출력한ㄷ.
- -c : 1 byte단위의 수를 출력한다.
-
cat
- 지정된 파일 내의 내용을 출력
- 내용을 보는 것만이 아니라 간단한 파일 생성에도 사용가능하다.
- 옵션 n : 라인 번호를 같이 출력해준다.
- cat >(single redirection) /tmp/ss : /tmp에 ss라는 파일 생성. 이미 파일이 있다면 파일을 지우고 다시 생성
- 참고사항 : ctrl + c : 프로세스 종료, ctrl + d : EOF
- cat >>(double redirection) /tmp/ss : ss라는 파일의 추가..
- cat /etc/passwd > /tmp/pass : /etc/passwd의 내용이 /tmp/pass라는 파일로 복사(?) 된다.
- wc -l /etc/passwd >(or >>) /tmp/pass : 이런것도 가능..
-
head & tail : 실무에서 가장 많이 쓴다.!!!!!
- text 출력
- 내가 보고 싶은 text의 크기가 상당히 클 경우, 앞 or 뒷쪽의 몇번째만 볼수 있는 명령어
- head or tail /etc/services
- 옵션추가가 없으면 각각 앞, 뒤 10줄만 출력
- 옵션은 숫자만 써주면 됨
- head or tail -100 /etc/services
- cat은 파일 내부 정보를 모두 출력하지만, head와 tail을 사용하여 원하는 위치만을 출력하여 확인해 볼 수 있다.
-
more
- 지정한 파일 내용을 출력하되, cat과 달리 한 페이지씩 출력되며 그에 따라 간단한 제어도 가능한 명령어.
- 이후, 스페이스키는 한페이지씩, 엔터키는 줄단위로, 뒤로 갈려면 B, 끝내려면 q를 누른다.
-
cp(copy)
- 원본 파일 및 directory를 지정한 위치로 복사
- cp /etc/passwd /tmp
- cp /etc/passwd /tma : /에 tma라는 파일을 만든다.
- 이름을 바꿔서 복사할수도 있다. : cp /etc/passwd /tmp/pass
- 만약 내 위치에다가 복사하려면 : cp /etc/passwd .
- cp /etc . : 디렉토리를 복사할때는 옵션 필요 : 옵션 r ---> cp -r /etc .
- 옵션을 이용하지 않으면 디렉토리는 복사가 불가능하다.
-
parameter * : wildcard...
- cp /bin/a* : /bin에 있는 a로 시작하는 모든 파일 복사
-
예문
- cp /etc/passwd /tmp : /etc/passwd 파일을 /tmp 안에 복사
- cp /etc/passwd /tmp/pass : 이름이 변경되여 /tmp로 복사
- cp /bin/a* /tmp : /bin안에 a로 시작되는 이름의 파일을 모두 복사
- f옵션 : 덮어쓰기를 해야할 상황이면 강제로 진행
-
mv(move)
- 파일이나 directory의 위치를 변경할 때 사용하는 명령
- 파일의 이름 바꾸기도 사용가능.
- 사용법은 cp와 거의 동일!
- mv /tmp/etc babo(./babo가 정석) at /tmp
-
mkdir(make directory)
- 디렉토리 만들기
- 주요 옵션
- aa/bb/cc/dd/ee를 한번에 만들기.. : -p옵션 사용.. mkdir -p /tmp/aa/bb/cc/dd/ee
-
rm(remove)
- 파일을 삭제하는 명령
- 디렉토리 삭제 : r옵션.
- f : 확인하지 않고 강제삭제
- rm /tmp/* or rm *(at /tmp)
- 주의점 : 루트에서 할때는.. 그냥 다 삭제된다..
심화된 명령어는 내일부터
이 글은 스프링노트에서 작성되었습니다.















