# 현재 디렉토리의 모든 파일을 보여준다.
ls -a
. .bash_logout .cache .krew .pki .viminfo deploy
.. .bash_profile .config .kube .rnd bak
.bash_history .bashrc .docker .local .ssh bin
# 파일의 종류, 권한 등에 따라 다른 색으로 표시해준다.
ls --color=auto
bak bin deploy
# Long listing format, 파일 상세 정보를 표시한다.
ls -l
합계 0
drwxrwxr-x 3 haedong haedong 63 6월 23 13:56 bak
drwxrwxr-x 2 haedong haedong 89 7월 25 08:32 bin
drwxrwxr-x 17 haedong haedong 258 8월 1 08:18 deploy
# Human readable, 파일 용량을 읽기 편하게 표시해준다. byte가 아닌 MB, GB 등으로 표시한다.
# 단 h 단독으로 사용하는 경우 파일 세부 정보는 보이지 않으므로 의미가 없다. -l 과 함께 사용한다.
ls -lh
합계 0
drwxrwxr-x 3 haedong haedong 63 6월 23 13:56 bak
drwxrwxr-x 2 haedong haedong 89 7월 25 08:32 bin
drwxrwxr-x 17 haedong haedong 258 8월 1 08:18 deploy
# 현재 디렉토리의 모든 파일의 세부 정보를 함께 보고 싶을 때
ls -lha
합계 52K
drwx------. 13 haedong haedong 255 8월 8 14:45 .
drwxr-xr-x. 4 root root 32 6월 17 11:07 ..
-rw-------. 1 haedong haedong 24K 8월 8 14:45 .bash_history
-rw-r--r--. 1 haedong haedong 18 4월 1 2020 .bash_logout
-rw-r--r--. 1 haedong haedong 193 4월 1 2020 .bash_profile
-rw-r--r-- 1 haedong haedong 576 7월 25 08:36 .bashrc
drwxr-xr-x 3 haedong haedong 18 6월 23 13:52 .cache
drwxrwxr-x 4 haedong haedong 30 7월 4 09:49 .config
drwx------ 2 haedong haedong 25 6월 23 16:57 .docker
drwxr-xr-x 6 haedong haedong 59 7월 25 08:14 .krew
drwxr-x--- 3 haedong haedong 33 6월 24 10:00 .kube
drwxrwxr-x 3 haedong haedong 19 7월 22 10:40 .local
drwxrw---- 3 haedong haedong 19 6월 23 13:56 .pki
-rw------- 1 haedong haedong 1.0K 6월 23 13:48 .rnd
drwx------ 2 haedong haedong 80 7월 18 09:25 .ssh
-rw------- 1 haedong haedong 9.2K 8월 8 14:45 .viminfo
drwxrwxr-x 3 haedong haedong 63 6월 23 13:56 bak
drwxrwxr-x 2 haedong haedong 89 7월 25 08:32 bin
drwxrwxr-x 17 haedong haedong 258 8월 1 08:18 deploy
# ~ 는 나의 홈 디렉토리
# . 은 현재 디렉토리
# .. 은 한 단계 상위 디렉토리
# / 는 root 디렉토리, 즉 최 상위 디렉토리. /보다 상위 디렉토리는 없다.
# pwd는 현재 내가 위치한 디렉토리 확인
pwd
/home/haedong
cd . # 명령
pwd # cd 명령 후 현재 위치 확인
/home/haedong # pwd 결과
cd ..
pwd
/home
cd ../var/log
pwd
/var/log
#이렇게 사용하는 것도 가능하다.
cd /var/log/../../home/haedong/deploy
pwd
/home/haedong/deploy
# cp : copy
# mv : move
# mkdir : make directory
# rmdir : remove directory
# rmdir의 경우 디렉토리가 완전히 비어있어야만 명령이 수행된다. 따라서 잘 쓰지 않는다.(귀찮아서)
# haedong.sh 파일의 사본 생성
cp haedong.sh haedong.sh.bak
# haedong.sh 파일의 사본을 다른 경로에 생성
cp haedong.sh /tmp/haedong.sh
# 또는 아래와 같이 수행하면 같은 파일명의 파일이 복제된다.
cp haedong.sh /tmp/
# haedong.sh 파일의 이름을 haedong 으로 변경 (리눅스 계열은 파일 이름 변경 명령이 없다)
mv haedong.sh haedong
# haedong.sh 파일을 /tmp로 이동
mv haedong.sh /tmp/
# 또는 아래와 같이 수행하면 파일 이름을 바꿔서 이동할 수 있다.
mv haedong.sh /tmp/haedong.sh.bak
# 내 홈 디렉토리에 filss_temp 디렉토리 생성
mkdir ~/files_temp
# 내 홈 디렉토리에 a 디렉토리를 만들고 그 아래 b 그 아래 c 그 아래 d 총 네 개의 디렉토리 생성
mkdir -p ~/a/b/c/d
# 파일 삭제
rm haedong.sh
# 파일 강제 삭제
rm -f haedong.sh
# 디렉토리 삭제
rmdir haedong
# 디렉토리 및 하위 디렉토리와 파일 삭제
# r은 recursive, f는 force
# f 옵션을 사용할 때 명령은 사용자에게 다시 확인하지 않는다. 주의해서 사용해야 한다.
rm -rf haedong
# 내용이 없는 빈 파일을 생성한다.
touche file_name