pwd
cd
cd ~
# 동일 동작
cd
만 사용하면 홈디렉토리(/home/username
)로 이동된다.cd directory-name
만약 경로가 /
문자로 시작한다면 무조건 절대 경로이다. /
이외의 문자로 시작한다면 무조건 상대 경로이다.
cd /log
/
로 시작하기 때문에 절대 경로이다..
: 현재 디렉토리 경로 의미\
..
: 상위 디렉토리 경로 의미
cd ./log
/
로 시작하지 않기 때문에 상대 경로이다.cd log
cd ..
cd ../log
/
로 시작하지 않기 때문에 상대 경로이다.ls
ls -l
ubuntu@host:/var/log$ ls -l
total 504
drwx------ 3 root root 4096 Jul 21 12:23 amazon
-rw-r----- 1 root adm 0 Jul 21 12:23 apport.log
파일 이름 앞의 문자열이 파일의 종류를 의미한다.
-
: 일반 파일d
: 디렉터리리눅스에서는 점(.
)으로 시작하는 파일명을 가진 파일은 숨김 파일로 인식해 처리된다(.env
, .gitignore
).
ls -a
ls
명령어로 디렉터리 내 파일을 조회할 때 숨김 파일은 같이 조회되지 않는다. 숨김 파일을 조회하려면 ls -a
라고 명령어를 입력한다.
ubuntu@host:/var$ ls -l
total 44
ubuntu@host:/var$ ls -la
total 56
몇몇 명령어 뒤에는 -
후에 알파벳이 추가로 붙는다. 이 -l
, -a
같이 하이픈(-
)으로 시작하는 값을 보고 리눅스 명령어에서는 옵션이라고 부른다.
Option은 Short와 Long, 두 가지 형태를 가진다. Short Option은 하이픈 하나(-
)로 시작하고, Long Option은 하이픈 두 개(--
)로 시작한다.
ls -l -a
ls -l --all
ls -l -a
=> ls -a -l
ls -l -a
=> ls -la
ls
에서 -a
옵션이 작동했다고 해서, mkdir
에서 -a
옵션이 동일하게 작동한다는 보장이 없다. 옵션은 명령어마다 다르게 구성된다.
touch file-name
mkdir directory-name
rm file-name
rm -r directory-name
rm
명령어는 파일만 삭제할 수 있다. 디렉토리를 삭제하려면 -r
옵션을 명시해줘야한다.rm -rf item-name-i-want-to-remove
-f
은 강제 삭제 옵션을 의미한다. 파일에 대한 권한이 없더라도 삭제가 강제된다.-rf
조합은 매우 강력한 명령으로 실수 시 시스템 파일까지 삭제될 수 있으므로 주의가 필요하다.cp file-name target-path
cp origin-file-name new-file-name
cp origin-file-name ./new-file-name
# 두 라인은 똑같은 동작을 진행한다.
origin-file-name
을 현재 경로에 new-file-name
이름으로 복사한다.-r
cp -r origin-directory-name new-directory-name
origin-directory-name
을 현재 경로에 new-directory-name
이름으로 복사한다.rm
명령어와 동일하게 디렉토리를 조작하려면 -r
옵션이 필요하다.mv target-file ../upper-directory
mv target-directory ./cur-directory
target-item
을 target-path
로 이동(잘라내기)한다.-r
옵션을 사용하지 않는다.mv origin-item-name new-item-name
origin-item-name
을 현재 경로에 new-item-name
이름으로 이동한다. 즉, item의 이름을 바꾼다.-i
mv -i target-item target-path
-i
옵션이 없다면 덮어쓰기가 경고 없이 자동으로 진행된다. 덮어쓰기를 방지하고 싶다면 -i
옵션을 사용한다.윈도우는 리눅스와는 다른 운영체제이다. 따라서 윈도우의 터미널에서는 리눅스 명령어가 동작하지 않을 수 있다. 위 명령어를 사용하고 싶다면 WSL 혹은 Git Bash 설치를 추천한다.
~
)는 무슨 의미임?터미널 화면의 가장 마지막 줄에 @
앞에 있는 값은 사용자의 이름을 의미한다. 윈도우나 맥 같은 다른 컴퓨터에서 처럼 리눅스에서도 여러 사용자를 만들어서 컴퓨터를 사용할 수 있다.
리눅스 환경에서는 각 사용자에게 할당된 디렉토리가 있다. 그 디렉토리 보고 홈 디렉토리라고 부른다. 홈 디렉토리의 경로는 /home/{사용자명}
이다. 사용자의 이름이 ubuntu
일 경우에는 /home/ubuntu
가 홈 디렉토리이다.
이 홈 디렉토리를 간결하게 표현하기 위해 ~
표시를 사용한다.