知识储备


1. 计算机中存储的是0101二进制数字,我们能读懂吗?显然不能。这些0101数据构成不同类型的文件,不同类型的文件用“不同的眼光”[比如ASCII文本,JPG图片]去看才有意义。

2. 操作系统并不直接管理这些文件,而是交给小弟文件系统来做这事。成千上万的文件怎么才能有条理的放在一起呢?这就靠文件系统了,最简单的就是分区,分目录来做咯。层次化、结构化是问题化简的不二之选。当我们登陆进Linux无论做任何操作其实都是在一个特定目录下,可以切来切去;

3. 有目录,就有目录路径,有2种路径划分

  • 绝对路径:从/根目录为参考点的完整路径

  • 相对路径:以当前目录为参考点的路径

4. 一个文件,并不单纯的是数据,严格来说文件组成部分包含这2部分

  • 元数据:即文件的属性,比如创建时间、修改时间、文件名、文件索引等等,打开文件是看不到的

  • 数据:你实实在在能够看到的内容本身,比如a.txt中你写的'hello world’


Pwd命令


查询你目前所在的文件目录,pwd即print working directory

Usage:

pwd [-LP]

常用选项:

#pwd -L                显示,逻辑地址
#pwd -P                目录是软连接,显示实际物理地址,所谓的软连接 即为symbolic link
[8-20]Linux常用目录pwd,ls,cd目录和stat,echo基本用法_cd


Cd命令


切换到指定路径,如果是绝对路径-->从根目录开始依次切入,如果是相对路径-->从当前目录

Usage:

cd [-L|-P] [dir]

常用选项:

无参数,或特殊参数的情况

#cd                      不指定参数,默认会切换到用户根目录, root用户为/root 其他用户为/home/user
#cd ~                    同上

#cd ..                   如果参数为.. 切换到当前目录上一层目录
#cd /                    直接切换到根目录

-L, -R   参数

#cd -L                   切换到逻辑地址
#cd -R                   目录是软连接,切换到实际物理地址

[8-20]Linux常用目录pwd,ls,cd目录和stat,echo基本用法_ls_02

Ls命令


列出目录内容,通常可以配合各种选项实现增强内容显示

Usage:

ls [OPTION]... [FILE]...  默认为当前目录,切按字母顺序排序

常用选项

#ls -a                    显示当前目录下所有文件,包含隐藏文件[.开头的文件],包含.和..
#ls -A                    不显示...  分别为 当前目录 和 上层目录
#ls -d                    显示目录自身属性
#ls -i                    人类以文件名标识文件,计算机用“i-node,index-node”来标识,是一个数字
#ls -l                    详细显示,具体表现为一行一行显示,显示文件权限、归属者、时间、大小
#ls -r                    逆序显示文件,正常情况下字母顺序排序
#ls -R                    递归显示,默认只显示一层目录,-R遍历所有
#ls --block-size=k        以k为单位显示文件大小,还可以指定为M,G等等
[8-20]Linux常用目录pwd,ls,cd目录和stat,echo基本用法_stat_03

[8-20]Linux常用目录pwd,ls,cd目录和stat,echo基本用法_stat_04


Stat命令


显示文件或文件系统的状态

Usage:

stat [OPTION]... FILE...

常用选项:

-L,--dereference    跟随链接文件

#stat -L /etc/Rc5.d       如果目标是链接文件,那么跟随链接,就是找到源头,等价于--dereference
#stat --derefernce /etc/Rc5.d

-f,--file-system       显示文件系统状态非文件状态

#stat -f                  显示文件系统状态而非文件状态
#stat --file-system

-c,--format=格式,--printf=格式     按照指定的格式渲染之后输出

#stat -c --format=格式      使用指定输出格式代替默认值,每用一次指定格式换一新行
#stat -c --printf=格式      类似 --format,但是会解释反斜杠转义符,不使用换行作,输出结尾。
                           如果您仍希望使用换行,可以在格式中加入"\n"
请注意可以用= 也可以不用,用空格隔开,也可以加‘%a’
规定了一系列可输出的格式,如输入文件名、文件权限等等,基本都是文件的属性
参照--->http://linux.51yip.com/search/stat

[8-20]Linux常用目录pwd,ls,cd目录和stat,echo基本用法_ls_05


Echo命令


通过type echo可以看到,echo是Bash的内建命令,但是很多Bash解释器都会内建该命令!

Echo可以显示一行文本,准确来说在文本打印到标准输出

Usage:

echo [SHORT-OPTION]... [STRING]...
echo LONG-OPTION

常用选项:

基本参数

#echo -n                   不输出行尾的换行符.
#echo -e                   允许对下面列出的加反斜线转义的字符进行解释.
#echo -E                   禁止对在STRINGs中的那些序列进行解释.

特殊情况,在没有 -E 的情况下,可承认并可以内置替换以下序列:

 \NNN                      字符的ASCII代码为NNN(八进制)
\\                        反斜线
\a                        报警符(BEL)
\b                        退格符
\c                        禁止尾随的换行符
\f                        换页符
\n                        换行符
\r                        回车符
\t                        水平制表符
\v                        纵向制表符