鸟哥linux文件与目录管理
鸟哥linux文件与目录管理
Hoshea Zhang在不同的目录间变换、 建立与删除目录、建立与删除文件,还有寻找文件、查阅文件内容等内容
目录与路径
目录的相关操作
1 | . 代表此层目录 |
cd 变换目录
比较熟悉了
pwd 显示当前所在目录
mkdir建立新目录
只能一层一层的建立
如果要多层建立 在mkdir后面加一个[-p]
rmdir 删除空目录
执行文件路径的变量: $PATH
如果下达echo $PATH
指令,就会输出很多目录,这些就是环境变量
文件与目录管理
文件与目录的检视 ls
包括一系列参数
最常用的是ls -l,他已经被简化为ll
复制删除和移动 cp rm mv
- cp
1 | 范例一:用root 身份,将家目录下的 .bashrc 复制到 /tmp 下,并更名为 bashrc |
rm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36[root@study ~]# rm [-fir] 文件或目录
选项与参数:
-f :就是 force 的意思,忽略不存在的文件,不会出现警告讯息;
-i :互动模式,在删除前会询问使用者是否动作
-r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
范例一:将刚刚在 cp 的范例中建立的 bashrc 删除掉!
[root@study ~]# cd /tmp
[root@study tmp]# rm -i bashrc
rm: remove regular file `bashrc'? y
# 如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!
范例二:透过通配符*的帮忙,将/tmp 底下开头为bashrc 的档名通通删除:
[root@study tmp]# rm -i bashrc*
# 注意那个星号,代表的是 0 到无穷多个任意字符喔!很好用的东西!
范例三:将 cp 范例中所建立的 /tmp/etc/ 这个目录删除掉!
[root@study tmp]# rmdir /tmp/etc
rmdir: failed to remove '/tmp/etc': Directory not empty <== 删不掉啊!因为这不是空的目录!
[root@study tmp]# rm -r /tmp/etc
rm: descend into directory `/tmp/etc'? y
rm: remove regular file `/tmp/etc/fstab'? y
rm: remove regular empty file `/tmp/etc/crypttab'? ^C <== 按下 [crtl]+c 中断
.....(中间省略).....
# 因为身份是 root ,预设已经加入了 -i 的选项,所以你要一直按 y 才会删除!
# 如果不想要继续按 y ,可以按下『 [ctrl]-c 』来结束 rm 的工作。
# 这是一种保护的动作,如果确定要删除掉此目录而不要询问,可以这样做:
[root@study tmp]# \rm -r /tmp/etc
# 在指令前加上反斜杠,可以忽略掉 alias 的指定选项喔!至于 alias 我们在bash 再谈!
# 拜托!这个范例很可怕!你不要删错了!删除 /etc 系统是会挂掉的!
范例四:删除一个带有 - 开头的文件
[root@study tmp]# touch ./-aaa- <==touch 这个指令可以建立空文件!
[root@study tmp]# ls -l
-rw-r--r--. 1 root root 0 Jun 11 19:22 -aaa- <==文件大小为0,所以是空文件
[root@study tmp]# rm -aaarm:
invalid option -- 'a' <== 因为 "-" 是选项嘛!所以系统误判了!
Try 'rm ./-aaa-' to remove the file `-aaa-'. <== 新的 bash 有给建议的
Try 'rm --help' for more information.
[root@study tmp]# rm ./-aaa-mv
1 | [root@study ~]# mv [-fiu] source destination |
文件内容查阅
可以使用cat/tac/nl这几个指令
- cat
选项与参数:
-A :相当于 -vET 的整合选项,可列出一些特殊字符而不是空白而已;
-b :列出行号,仅针对非空白行做行号显示,空白行不标行号!
-E :将结尾的断行字符 $ 显示出来;
-n :打印出行号,连同空白行也会有行号,与 -b 的选项不同;
-T :将 [tab] 按键以 ^I 显示出来;
-v :列出一些看不出来的特殊字符
- tac 由最后一行到第一行反向显示