路径
命令太多,且每个命令可选的参数实在太多,懒得列举,就把我目前认为比较常用的写一下吧。 同时,这不是手册,只会记录一下命令的大概形式,想要深究的话可以Google,或者点这里 ,包含大多数命令
ls——列出目录
可选参数
- -a列出全部文件
- -d仅列出目录本身。而不是列出目录内的文件数据
-
pwd——显示当前路径
唯一值得一提的,就是加上
-P
可以显示真实路径,而非连接link路径。可以拿/bin做测试rmdir——删除空目录
cp——复制文件或者目录
-a:pdr的综合(常用)
- -d:若source为link file,则复制link属性而非文件本身
- -f:强制
- -i:若dest已经存在,则覆盖前会询问
- -l:创建硬连接
- -p:连同文件的属性一起复制,备份常用
- -r:递归复制,复制目录常用
- -s:复制为软连接
rm——删除文件/目录
值得注意的参数:-r
递归删除,常用于目录的删除, 非常危险 非常危险 非常危险mv——移动文件/目录,或修改名称
文件相关常用命令
cat——显示文件内容
可选项
- -n:列出行号
- -v:列出看不出来的特殊字符
- -E:将结尾断行字节
$
显示出来 - -T:将tab以^I显示出来
-
less——一页一页翻阅文件
less filename
运行时的命令 /string:向下搜索
- ?string:向上搜索
- n:重复前一个搜索
- N:反向重复前一个搜索
- q
- pageDown
- pageUp
tail/head——取出文件最后/最前几行
tail [-n number] file
链接link相关的概念
linux链接分为两种,一种是硬链接,一种是软连接(符号链接),默认情况下, ln
命令产生硬链接
在linux中,保存在磁盘分区中的文件,都会分配给一个编号,称为 索引节点号 (Inode)
硬链接
假设fileA是fileB的硬链接,那么fileA的节点号和fileB的节点号完全相同,即一个节点号对应两个文件名,两个文件名指向同一个文件,它们之间互不影响
硬链接的作用即,允许一个文件拥有多个有效路径,防止误删。所以,有多个硬连接的文件,需要将所有硬连接都删除后,才真正删除
软连接(符号连接)
软连接类似Windows的快捷方式,在符号连接中,文件实际上是一个文本文件,其中包含的有另一个文件的位置
假设fileA是fileB的软连接,则fileA的节点号与fileB的节点号是不同的,fileA指向的数据块中,存放的是fileB的路径名,然后可以通过fileB的节点号找到相应文件。所以,若fileB被删除了,A虽然存在,但指向的位置是无效的了。
测试
[oracle@Linux]$ touch f1 #创建一个测试文件f1
[oracle@Linux]$ ln f1 f2 #创建f1的一个硬连接文件f2
[oracle@Linux]$ ln -s f1 f3 #创建f1的一个符号连接文件f3
[oracle@Linux]$ ls -li # -i参数显示文件的inode节点信息
total 0
9797648 -rw-r--r-- 2 oracle oinstall 0 Apr 21 08:11 f1
9797648 -rw-r--r-- 2 oracle oinstall 0 Apr 21 08:11 f2
9797649 lrwxrwxrwx 1 oracle oinstall 2 Apr 21 08:11 f3 -> f1
[oracle@Linux]$ echo "I am f1 file" >>f1
[oracle@Linux]$ cat f1
I am f1 file
[oracle@Linux]$ cat f2
I am f1 file
[oracle@Linux]$ cat f3
I am f1 file
[oracle@Linux]$ rm -f f1
[oracle@Linux]$ cat f2
I am f1 file
[oracle@Linux]$ cat f3
cat: f3: No such file or directory