续上篇
- 显示当前路径:pwd
使⽤pwd命令可以显示当前的⼯作⽬录,该命令很简单,直接输⼊pwd即可,后⾯不带参
数。 - 创建⽬录:mkdir通过mkdir命令可以创建⼀个新的⽬录。参数-p可递归创建⽬录。需要注意的是新建⽬录的名称不能与当前⽬录中已有的⽬录或⽂件同名,并且⽬录创建者必须对当前⽬录具有写权限。
1. mkdir haha :在当前路径下创建haha文件夹
2. mkdir a/b/c/d -p:在当前路径下递归创建文件夹
3. tree以目录树的方式显示 - 删除⽬录:rmdir
可使⽤rmdir命令删除⼀个⽬录。必须离开⽬录,并且⽬录必须为空⽬录,不然提示删除
失败。 - 删除⽂件:rm
可通过rm删除⽂件或⽬录。使⽤rm命令要⼩⼼,因为⽂件删除后不能恢复。为了防⽌⽂
件误删,可以在rm后使⽤-i参数以逐个确认要删除的⽂件。
常用参数及含义如下表所示:
参数 | 含义 |
---|
-i | 以进⾏交互式⽅式执⾏ |
-f | 强制删除,忽略不存在的⽂件,⽆需提示 |
-r | 递归地删除⽬录下的内容,删除⽂件夹时必须加此参数 |
1. rm haha.txt -i:会询问是否真的要删除
2. rm haha.txt :不询问
3. rm 1 -r: rm删除文件夹时,需要添加-r
- 建⽴链接⽂件:ln
Linux链接⽂件类似于Windows下的快捷⽅式。链接⽂件分为软链接和硬链接。
软链接:软链接不占⽤磁盘空间,源⽂件删除则软链接失效。
硬链接:硬链接只能链接普通⽂件,不能链接⽬录。
使用格式:
ln 源⽂件 链接⽂件
ln -s 源⽂件 链接⽂件
如果 没有-s 选项代表建⽴⼀个硬链接⽂件,两个⽂件占⽤相同⼤⼩的硬盘空间,即使删
除了源⽂件,链接⽂件还是存在,所以-s选项是更常⻅的形式。
注意:如果软链接⽂件和源⽂件不在同⼀个⽬录,源⽂件要使⽤绝对路径,不能使⽤相对路径。
- 硬链接:ln haha.txt haha_hardlink.txt
- 软链接:ln -s haha.txt haha_softlink.txt
- 编辑文件:gedit haha.txt
- cat haha.txt, cat haha_hardlink.txt, cat haha_softlink.txt :可以看大文件的内容是一样的
- rm haha_softlink.txt:删除软链接就好比删除快捷方式,不会影响源文件
- gedit haha_hardlink.txt :修改文件,任意添加点数据,通过硬链接可以修改源文件
- getit haha_softlink.txt:通过软链接修改文件
- rm haha.txt : 删除源文件
- getit haha_softlink.txt: 删除源文件后,再打开软连接后,看不到数据
- gedit haha_hardlink.txt :删除硬链接文件,依然可以看到原数据
- 通过硬链接创建的文件的内容相同,修改一个文件内容(随意修改),修改一次,但是多个硬链接文件内容都变了,硬链接是同一个文件内容分,但是有多个文件名
- 查看或者合并⽂件内容:cat
- cat haha_hardlink.txt:查看当前路径下的文件内容
- cat /etc/samba/smb.conf:查看绝对路径下的文件内容
- cat text.txt test2.txt >heihei.txt:把这个两个文件的内容都重定向到heihei.txt文件中
- '>'表示:先清空,后添加
- '>>'表示:直接添加
- ⽂本搜索:grep
Linux系统中grep命令是⼀种强⼤的⽂本搜索⼯具,grep允许对⽂本⽂件进⾏模式查找。
如果找到匹配模式, grep打印包含模式的所有⾏。
grep⼀般格式为:
grep [-选项] ‘搜索内容串’⽂件名
在grep命令中输⼊字符串参数时,最好引号或双引号括起来。例如:grep‘a ’1.txt。
常⽤选项说明:
选项 | 含义 |
---|
-v | 显示不包含匹配文本的所有行(相当于求反) |
-n | 显示匹配⾏及⾏号 |
-i | 忽略⼤⼩写 |
grep搜索内容串可以是正则表达式。
正则表达式是对字符串操作的⼀种逻辑公式,就是⽤事先定义好的⼀些特定字符、及这些
特定字符的组合,组成⼀个“规则字符串”,这个“规则字符串”⽤来表达对字符串的⼀种过
滤逻辑。
grep常用正则表达式:
参数 | 含义 |
---|
^a | ⾏⾸,搜寻以 a开头的⾏;grep -n ‘^a’ 1.txt |
ke$ | ⾏尾,搜寻以 ke 结束的⾏;grep -n ‘ke$’ 1.txt |
[Ss]igna[Ll] | 匹配 [] ⾥中⼀系列字符中的⼀个;搜寻匹配单词signal、signaL、Signal、SignaL的⾏;grep -n ‘[Ss]igna[Ll]’ 1.txt |
. | (点)匹配⼀个⾮换⾏符的字符;匹配 e 和 e 之间有任意⼀个字符,可以匹配 eee,eae,eve,但是不匹配 ee,eaae;grep -n 'e.e’1.txt |
- 查找⽂件:find
find命令功能⾮常强⼤,通常⽤来在特定的⽬录下搜索符合条件的⽂件,也可以⽤来搜索
特定⽤户属主的⽂件。
常用用法:
命令 | 含义 |
---|
find ./ -name test.sh | 查找当前⽬录下所有名test.sh的⽂件 |
find ./ -name ‘*.sh’ | 查找当前⽬录下所有后缀为.sh的⽂件 |
find ./ -name “[A-Z]*” | 查找当前⽬录下所有以⼤写字⺟开头的⽂件 |
find /tmp -size 2M | 查找在/tmp ⽬录下等于2M的⽂件 |
find /tmp -size +2M | 查找在/tmp ⽬录下⼤于2M的⽂件 |
find /tmp -size -2M | 查找在/tmp ⽬录下⼩于2M的⽂件 |
find ./ -size +4k -size -5M | 查找当前⽬录下⼤于4k,⼩于5M的⽂件 |
find ./ -perm 777 | 查找当前⽬录下权限为 777 的⽂件或⽬录 |
- 拷⻉⽂件:cp
cp命令的功能是将给出的⽂件或⽬录复制到另⼀个⽂件或⽬录中,相当于DOS下的copy
命令。
常⽤选项说明:
选项 | 含义 |
---|
-a | 该选项通常在复制⽬录时使⽤,它保留链接、⽂件属性,并递归地复制⽬录,简单⽽⾔,保持⽂件原有属性。 |
-f | 已经存在的⽬标⽂件⽽不提示 |
-i | 交互式复制,在覆盖⽬标⽂件之前将给出提示要求⽤户确认 |
-r | 若给出的源⽂件是⽬录⽂件,则cp将递归复制该⽬录下的所有⼦⽬录和⽂件,⽬标⽂件必须为⼀个⽬录名。 |
-v | 显示拷⻉进度 |
- 移动⽂件:mv
⽤户可以使⽤mv命令来移动⽂件或⽬录,也可以给⽂件或⽬录重命名。
常⽤选项说明:
选项 | 含义 |
---|
-f | 禁⽌交互式操作,如有覆盖也不会给出提示 |
-i | 确认交互⽅式操作,如果mv操作将导致对已存在的⽬标⽂件的覆盖,系统会询问是否重写,要求⽤户回答以避免误覆盖⽂件 |
-v | 显示移动进度 |
- 归档管理:tar
计算机中的数据经常需要备份,tar是Unix/Linux中最常⽤的备份⼯具,此命令可以把⼀系列⽂件归档到⼀个⼤⽂件中,也可以把档案⽂件解开以恢复数据。
tar使用格式:
tar [参数] 打包⽂件名 ⽂件
tar命令很特殊,其参数前⾯可以使⽤“-”,也可以不使⽤。
常用参数:
参数 | 含义 |
---|
-c | ⽣成档案⽂件,创建打包⽂件 |
-v | 列出归档解档的详细过程,显示进度 |
-f | 指定档案⽂件名称,f后⾯⼀定是.tar⽂件,所以必须放选项最后 |
-t | 列出档案中包含的⽂件 |
-x | 解开档案⽂件 |
注意:除了f需要放在参数的最后,其它参数的顺序任意。
例如: tar -cvf test.tar *