【Linux】Linux基础命令 - 目录相关的命令 ls 、cd、du
巩固和复习Linux系统基础命令知识
目录相关的命令
ls 命令:列出文件和目录
列出目录内容
ls
[root@liuawen /]# pwd
/
[root@liuawen /]# ls
bin boot dev etc home lib lib64 lost+found media mnt opt patch proc root run sbin srv sys tmp usr var www
ls
是 list 的缩写,list 是英语“列举,列出”的意思。 ls 命令就是用于列出当前目录下的文件和目录。
Linux终端默认是有颜色标注的,一般来说:
蓝色 --> 目录
绿色 --> 可执行文件
红色 --> 压缩文件
浅蓝色 --> 链接文件
灰色 --> 其他文件
ls --color=auto
开启颜色标注,那ls --color=none
是关闭颜色标注
带参数的ls命令,
-a :显示所有文件和目录,包括隐藏的
[root@liuawen /]# ls --color=auto
bin boot dev etc home lib lib64 lost+found media mnt myproject opt patch proc root run sbin srv sys tmp usr var www
[root@liuawen /]# ls -a
. .autorelabel boot etc lib lost+found mnt opt proc run srv tmp var
.. bin dev home lib64 media myproject patch root sbin sys usr www
[root@liuawen /]#
比单独用 ls 时多了那些以点开头的文件和目录
在 Linux 中,以点(.)开头的文件是隐藏文件,不过这里不包括开头的两个 . 和 … ,
说明下这里的.
(一个点)表示当前目录,..
(两个点)表示上一级目录。
ls -A
它的作用和小写的 -a 几乎一样,唯一不同就是 -A 不列出 .
和…
这两个文件。
-l :详细列表
-l 参数使得 ls 命令列出一个显示文件和目录的详细信息列表:
[root@liuawen /]# ls -l
total 72
lrwxrwxrwx. 1 root root 7 Feb 20 10:57 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Apr 19 01:31 boot
drwxr-xr-x 19 root root 2960 Apr 3 18:12 dev
drwxr-xr-x. 84 root root 4096 Apr 19 01:31 etc
drwxr-xr-x. 4 root root 4096 Apr 18 23:16 home
lrwxrwxrwx. 1 root root 7 Feb 20 10:57 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Feb 20 10:57 lib64 -> usr/lib64
drwx------. 2 root root 16384 Feb 20 10:57 lost+found
drwxr-xr-x. 2 root root 4096 Apr 11 2018 media
drwxr-xr-x. 2 root root 4096 Apr 11 2018 mnt
drwxr-xr-x 2 root root 4096 Apr 20 08:05 myproject
drwxr-xr-x. 3 root root 4096 Apr 14 22:29 opt
drwxrwxrwx 2 root root 4096 Apr 11 08:55 patch
dr-xr-xr-x 106 root root 0 Apr 3 18:12 proc
dr-xr-x---. 7 root root 4096 Apr 17 13:49 root
drwxr-xr-x 28 root root 780 Apr 19 01:59 run
lrwxrwxrwx. 1 root root 8 Feb 20 10:57 sbin -> usr/sbin
drwxr-xr-x. 2 root root 4096 Apr 11 2018 srv
dr-xr-xr-x 13 root root 0 Apr 4 02:12 sys
drwxrwxrwt. 89 root root 4096 Apr 20 03:49 tmp
drwxr-xr-x. 14 root root 4096 Dec 13 2016 usr
drwxr-xr-x. 19 root root 4096 Apr 11 08:54 var
drwxr-xr-x 6 root root 4096 Apr 11 08:49 www
[root@liuawen /]#
ls -lh h 是 human-readable ,“适合人阅读的”。
美观点。。。
ls -lt t是time,按照文件或目录最近一次修改时间的降序排列
近到远
ls -lath
cd 命令:切换目录
cd是change directory 的缩写,表示“切换目录”。
cd / 去根目录 /
[root@liuawen /]# cd home/
[root@liuawen home]# pwd
/home
[root@liuawen home]# cd /
[root@liuawen /]# pwd
/
[root@liuawen /]#
cd home 当前是在根目录 / 中,用 cd home 就切换到了 /home 这个目录
[root@liuawen /]# pwd
/
[root@liuawen /]# cd home
[root@liuawen home]# pwd
/home
[root@liuawen home]#
回到上一级目录 cd ..
[root@liuawen home]# pwd
/home
[root@liuawen home]# cd ..
[root@liuawen /]# pwd
/
[root@liuawen /]#
[root@liuawen /]# pwd
/
[root@liuawen /]# cd home/
[root@liuawen home]# pwd
/home
[root@liuawen home]# cd .
[root@liuawen home]# pdw
-bash: pdw: command not found
[root@liuawen home]# pwd
/home
[root@liuawen home]# cd ..
[root@liuawen /]#
cd …/… 连续后退两个层级
[root@liuawen home]# pwd
/home
[root@liuawen home]# cd ..
[root@liuawen /]# cd home/
[root@liuawen home]# ls
liuawen www
[root@liuawen home]# cd liuawen/
[root@liuawen liuawen]# pwd
/home/liuawen
[root@liuawen liuawen]# cd ../..
[root@liuawen /]# pwd
/
重回家目录 cd ~ or cd
[root@liuawen /]# pwd
/
[root@liuawen /]# cd
[root@liuawen ~]# pwd
/root
[root@liuawen ~]#
du 命令:显示目录包含的文件大小
du 命令,显示文件和目录所占的空间大小。
du disk usage 表示磁盘使用。
[root@liuawen /]# cd
[root@liuawen ~]# pwd
/root
[root@liuawen ~]# du
4 ./.ssh
8 ./.pip
8 ./.oracle_jre_usage
4 ./.pki/nssdb
8 ./.pki
12 ./.cache/pip/selfcheck
28 ./.cache/pip/http/b/b/8/7/6
32 ./.cache/pip/http/b/b/8/7
36 ./.cache/pip/http/b/b/8
40 ./.cache/pip/http/b/b
44 ./.cache/pip/http/b
8 ./.cache/pip/http/f/e/d/0/e
12 ./.cache/pip/http/f/e/d/0
16 ./.cache/pip/http/f/e/d
20 ./.cache/pip/http/f/e
24 ./.cache/pip/http/f
72 ./.cache/pip/http
92 ./.cache/pip
180 ./.cache/Python-Eggs/MySQL_python-1.2.5-py2.7-linux-x86_64.egg-tmp
184 ./.cache/Python-Eggs
280 ./.cache
656 .
[root@liuawen ~]#
du -h h 是 human-readable ,“适合人阅读的”。
[root@liuawen ~]# du -h
4.0K ./.ssh
8.0K ./.pip
8.0K ./.oracle_jre_usage
4.0K ./.pki/nssdb
8.0K ./.pki
12K ./.cache/pip/selfcheck
28K ./.cache/pip/http/b/b/8/7/6
32K ./.cache/pip/http/b/b/8/7
36K ./.cache/pip/http/b/b/8
40K ./.cache/pip/http/b/b
44K ./.cache/pip/http/b
8.0K ./.cache/pip/http/f/e/d/0/e
12K ./.cache/pip/http/f/e/d/0
16K ./.cache/pip/http/f/e/d
20K ./.cache/pip/http/f/e
24K ./.cache/pip/http/f
72K ./.cache/pip/http
92K ./.cache/pip
180K ./.cache/Python-Eggs/MySQL_python-1.2.5-py2.7-linux-x86_64.egg-tmp
184K ./.cache/Python-Eggs
280K ./.cache
656K .
[root@liuawen ~]#
656K . 是当前目录总的大小
-a:显示文件和目录的大小 a 是 all 的首字母,表示“全部”。
du -ah 显示文件出来了
[root@liuawen ~]# du -ah
236K ./.mysql_history
4.0K ./.rediscli_history
0 ./.ssh/authorized_keys
4.0K ./.ssh
24K ./.bash_history
4.0K ./.pip/pip.conf
8.0K ./.pip
4.0K ./.rnd
4.0K ./.python_history
4.0K ./.pearrc
4.0K ./.cshrc
4.0K ./.pydistutils.cfg
4.0K ./.oracle_jre_usage/aa694b02fe91242e.timestamp
8.0K ./.oracle_jre_usage
4.0K ./.bashrc
8.0K ./.viminfo
4.0K ./.bash_profile
20K ./install.sh
16K ./get-docker.sh
4.0K ./.pki/nssdb
8.0K ./.pki
4.0K ./.cache/pip/selfcheck.json
4.0K ./.cache/pip/selfcheck/241e69162522ccf5846a2f42ebc24b17464915a155679666b89a9f31
4.0K ./.cache/pip/selfcheck/012ddf7805aa4850f27d8ef18142b89f6d2585947404eeaaab4a58ef
12K ./.cache/pip/selfcheck
24K ./.cache/pip/http/b/b/8/7/6/bb876b2e6a22c2739002e9ef3388ae978b7a6192a19fe67d8b0030f2
28K ./.cache/pip/http/b/b/8/7/6
32K ./.cache/pip/http/b/b/8/7
36K ./.cache/pip/http/b/b/8
40K ./.cache/pip/http/b/b
44K ./.cache/pip/http/b
4.0K ./.cache/pip/http/f/e/d/0/e/fed0ed508030b766d5b0c2792132c8bf197804464765b46b361f93a4
8.0K ./.cache/pip/http/f/e/d/0/e
12K ./.cache/pip/http/f/e/d/0
16K ./.cache/pip/http/f/e/d
20K ./.cache/pip/http/f/e
24K ./.cache/pip/http/f
72K ./.cache/pip/http
92K ./.cache/pip
176K ./.cache/Python-Eggs/MySQL_python-1.2.5-py2.7-linux-x86_64.egg-tmp/_mysql.so
180K ./.cache/Python-Eggs/MySQL_python-1.2.5-py2.7-linux-x86_64.egg-tmp
184K ./.cache/Python-Eggs
280K ./.cache
4.0K ./.bash_logout
4.0K ./.tcshrc
656K .
[root@liuawen ~]#
-s:只显示总计大小 s summarize 总结,概括
du -sh
[root@liuawen ~]# du -sh
656K .
总结
ls 命令用于显示当前目录中的文件;
cd 命令用于切换目录;
du 命令用于统计目录大小。
ls
ls -a
ls -A
ls -l
ls -lh
ls -lt
ls -alth
cd
cd ..
cd ../..
cd /
cd xxx/
du
du -h
du -a
du -ah
du -s
du -sh
参考资料
1、专栏 Linux命令行与Shell脚本编程大全 - Oscar
简单记录-笔记