리눅스는 CLI(Command Line Interface)이며 명령어는 현재 머물고 있는 디렉토리를 대상으로 내려진다
설치 없이 실습하기
- 리눅스 실습 사이트 접속
- StartupLink 클릭
pwd : 현재 디렉토리ls : list segment, 현재 위치의 파일 목록 조회mkdir : 디렉토리 생성touch : 파일 생성cd : change directory, 디렉토리 이동rm : remove, 파일 삭제mv : move, 파일 이동cp : copy, 파일 복사도움말 명령어
--help: 명령어에 대한 간단한 메뉴얼을 보여줌, 예)ls --helpman: 페이지로 이동하여 상세한 메뉴얼을 보여줌, 예)man ls
ls : 현재 위치의 파일 목록 조회-l : 파일 상세정보-a : 숨김 파일 표시-t : 파일 생성시간순으로 표시(제일 최근 것부터)-rt : 파일 생성시간순으로 표시(제일 오래된 것부터)-F : 파일 표시 시, 마지막 유형에 나타내는 파일명을 끝에 표시
cd : 디렉토리 이동cd [디렉토리 경로] : 해당 디렉토리로 이동cd ~ : 홈 디렉토리로 이동cd / : 최상위 디렉토리로 이동cd . : 현재 디렉토리cd .. : 상위 디렉토리로 이동cd - : 이전 경로로 이동
touch : 파일 생성touch [파일명] : [파일명]의 파일을 생성touch -c [파일명] : 해당 파일의 시간을 현재 시간으로 갱신touch -t 202311221610 [파일명] : 해당 파일의 시간을 날짜 정보(yyyymmddhhmm)로 갱신touch -r [파일A] [파일B] : 파일B의 날짜 정보를 파일A의 날짜 정보와 동일하게 변경
rm : 파일 삭제rm [파일명] : 해당 파일 삭제rm -r [폴더명] : 해당 디렉토리 삭제rm -f [파일명] : 해당 파일 강제 삭제
mkdir : 디렉토리 생성mkdir [폴더명] : [폴더명] 디렉토리 생성mkdir [폴더A] [폴더B] : 한 번에 여러 개의 디렉토리 생성mkdir -p [폴더A]/[폴더B]/[폴더C] : 상위 디렉토리 생성 후 하위 디렉토리도 생성mkdir -m 777 [폴더명] : 특정 퍼미션(권한)을 갖는 디렉토리 생성| 8진수 | 2진수 | 권한 | 의미 |
|---|---|---|---|
| 0 | 000 | --- | 아무 권한 없음 |
| 1 | 001 | --x | 실행 권한만 있음 |
| 2 | 010 | -w- | 쓰기 권한만 있음 |
| 3 | 011 | -wx | 쓰기,실행 권한 있음 |
| 4 | 100 | r-- | 읽기 권한만 있음 |
| 5 | 101 | r-x | 쓰기,실행 권한 있음 |
| 6 | 110 | rw- | 읽기,쓰기 권한 있음 |
| 7 | 111 | rwx | 모든 권한 있음 |
cp : 파일 복사cp [파일A] [파일B] : 파일A를 파일B라는 이름으로 복사cp -f [파일A] [파일B] : 강제 복사(이미 존재할 경우 기존파일을 지우고 복사)cp -r [폴더A] [폴더B] : 디렉토리 복사, 폴더 안의 모든 하위 경로와 파일들을 복사mv : 파일 이동mv [파일A] [파일B] : 파일A를 파일B로 변경mv [파일A] /[폴더명] : 파일A를 해당 디렉토리로 이동mv [파일A] [파일B] /[폴더명] : 여러 개의 파일을 해당 디렉토리로 이동mv [폴더A] [폴더B] : 폴더A를 폴더B로 이름 변경일반 사용자가 시스템 관리자와 같은 root 권한을 사용할 수 있도록 해준다.
sudo usermod -aG sudo 사용자 sudo apt-get updatenano는 텍스트 기반의 편집기에 해당vi도 있지만 초심자에게는 nano 추천nano를 입력하면 아래와 같이 nano 에디터가 실행된다
^ : ctrl을 의미
^O를 실행하여 파일명을 작성하고 enter를 치면 hello.html이라는 파일이 저장된다
^X를 실행하여 에디터에서 나온 뒤 확인해보면 hello.html라는 파일이 생긴 것을 확인할 수 있다
hello.html을 편집하고 싶으면 nano hello.html이라고 입력하여 에디터로 들어간 후 편집한다vi 에디터
컴퓨터의 운영 체제를 위해 일정한 방식으로 컴퓨터 프로그램의 설치, 업그레이드, 구성의 제거 과정을 자동화하는 소프트웨어 도구들의 모임
패키지 매니저란? 참고
리눅스의 패키지 매니저에는 apt와 yum 등이 있다
apt : Advanced Packaging Toolapt뿐만 아니라 apt-get이라는 명령어도 있다.
apt-get의 옵션이 많기 때문에 자주 사용하는 옵션들을 추출해서 apt가 만들어졌다.
| apt | apt-get | 설명 |
|---|---|---|
| apt install <package_name> | apt-get install <package_name> | 패키지 설치 |
| apt remove <package_name> | apt-get remove <package_name> | 설정파일을 제외한 패키지 파일 삭제 |
| apt purge <package_name> | apt-get purge <package_name> | 설정파일을 포함한 패키지 파일 모두 삭제 |
| apt upgrade <package_name> | apt-get upgrade <package_name> | 패키지 업그레이드(최신버전으로) |
| apt update | apt-get update | 소프트웨어 페키지 목록 업데이트 |
관리자로 로그인하지 않은 경우에는
sudo명령을 추가해야 한다
apt-get대신 apt-cache를 사용해야하는 기능이 있다.
| apt-cache | apt | 설명 |
|---|---|---|
| apt-cache search <package_name> | apt search <package_name> | 패키지 검색 |
| apt-cache show <package_name> | apt show <package_name> | 패키지 정보 표시 |
| apt-cache policy | apt policy | 설치된 패키지의 우선순위 및 저장소 정보 표시 |
wget웹에서 파일 다운로드를 하기 위한 명령줄 유틸리티
url을 통해 파일을 다운로드 받을 수 있다
wget http://example.org/file.tar.gz
익명 FTP를 통해 파일을 다운로드할 수 있다
wget ftp://example.org/file.tar.gz
--no-check-certificate 옵션을 사용하면 인증서 유효성 검사를 무시할 수 있다
wget http://example.org/file.tar.gz --no-check-certificate
-m옵션으로 미러링을 설정하면 모든 웹사이트의 파일을 다운받을 수 있다
wget -m http://example.org/
다운받을 URL을 지정한 파일에서 찾는다
wget -i filename
-o 옵션으로 결과 파일을 지정하면 기존에 존재하는 모든 파일에 덮어쓰기를 한다
wget -q http://example.org/file.tar.gz -o filename
wget -b http://example.org/file.tar.gz
wget -c http://example.org/file.tar.gz
wget -limit-rate=128k http://example.org/file.tar.gz
wget -version
git리눅스에서 개발된 분산버전관리 시스템
먼저 아래 사진처럼 git이 설치되어 있는지 확인한다

설치되어 있지 않다면 패키지 매니저를 통해 다운받는다
sudo apt-get install git
해당 주소에 해당하는 오픈 소스 프로젝트를 해당 폴더에 복제한다
git clone [오픈 소스 프로젝트 URL] [폴더명]
생활코딩-리눅스 강좌
https://cocoon1787.tistory.com/717
위키백과 - 패키지 관리자
wget 명령어 사용법