Shell은 H/W와 운영체제를 감싸고 있다
사용자는 시스템을 사용하기 위해서 Shell 로 접근해서 시스템을 이용
사용자는 터미널 프로그램을 이용하여 Shell 을 사용
리눅스에서 기본적으로 사용하는 Shell 은 bash Shell
SSH 접속을 이용하여 원격의 리눅스의 Shell 이용 가능
1.메뉴얼 조회
1. man 2. '/' 키 입력으로 원하는 항목 검색 가능, 다시 '/ + enter' 로 다음 항목
2. 파일 목록/내용 조회 관련 명령어
1. ls, cat, head, tail 2. file filelist.gz : filelist.gz 가 어떤 파일인지 알려줌
3. 검색/탐색 관련 명령어
1. grep, find 2. '.' 은 현재 디렉토리, '..' 은 상위 디렉토리 의미(상대경로) 3. find > filelist : '>' 는 find 의 결과를 filelist 파일로 저장하라는 뜻
4. 압축/해제 관련 명령어
1. tar, gzip/gunzip, zip/unzip 2. .tar.gz == .tgz : tar 은 파일들을 연결해주는 역할(압축은 안됨), gz 가 연결된 파일들을 압축. 3. mkdir testdir: testdir이라는 하위디렉토리 생성 4. rm -rf testdir/: 현재 디렉토리의 testdir 지우기
5. 시간 관련 명령어
1. date, cal 2. date -u 사용시 표준시로 출력 3. date +(FORMAT) 으로 원하는 시간 형태로 출력 가능 4. cal 명령어로 현재 월의 달력 보기 가능, cal 2021 로 2021년의 달력보기 가능
6. 기타 명령어
1. echo, exit, history 2. history 명령어로 그동안 사용한 shell 명령어 목록 확인 가능 3. !16 또는 !(history 상의 원하는 명령어의 번호)로 해당 명령어 실행 가능 4. 화살표 위 방향 또는 !!명령어로 직전 명령어 사용 가능 5. exit 명령어로 shell 을 빠져 나올 수 있음 -> shell 에서 또 다른 shell 을 사용할때 exit 명령어로 shell 나올 수 있음 6. echo xxx 명령어로 'xxx'를 화면에 재출력 가능 -> Bash로 간단한 프로그래밍을 할 수 있는데 이때 echo 명령어를 통해 변수 값을 화면에 출력할 수 있음 7. env 로 현재 변수들의 값을 알 수 있음 8. which ls 또는 which (tool 이름) 으로 ls의 위치를 알 수 있음
7. 관리자 권한 실행
1. sudo 2. 리눅스는 기본적으로 관리자 계정인 root가 생성됨 3. 기본적인 터미널의 권한은 사용자 권한 3. 터미널에서 관리자 계정의 관리자 권한을 이용하기 위해 sudo 명령어가 필요 4. sudo 는 다른 계정으로 switch user 하는 명령어 이며 default 가 관리자 계정
8. 패키지 매니저
1. apt 는 리눅스 우분투의 패키지 매니저를 사용하기 위한 tool 2. sudo apt install hello 로 hello 레포지토리를 설치 할 수 있음 3. apt list --installed 로 로컬에 설치된 레포지토리를 확인 할 수 있음
9. 텍스트 에디터
1. nano 는 vi 또는 vim 보다 상대적으로 직관적인 텍스트 에디터 2. nano (파일 이름) 으로 텍스트 에디터를 열고 편집하거나 열람 할 수 있음.