写点什么

初探 Linux-- 鸟哥私房菜读书笔记,廖雪峰 java 教程百度云

用户头像
极客good
关注
发布于: 刚刚

coding@DESKTOP-5MQ0I0D:~$ cd /tmp/


coding@DESKTOP-5MQ0I0D:/tmp$ ls


20190304test001.txt all.tar.xz bashrc test2 testing


coding@DESKTOP-5MQ0I0D:/tmp$ pwd


/tmp


coding@DESKTOP-5MQ0I0D:/tmp$ mkdir test


coding@DESKTOP-5MQ0I0D:/tmp$ ls


20190304test001.txt all.tar.xz bashrc test test2 testing


coding@DESKTOP-5MQ0I0D:/tmp$ rmdir test


coding@DESKTOP-5MQ0I0D:/tmp$ ls


20190304test001.txt all.tar.xz bashrc test2 testing


coding@DESKTOP-5MQ0I0D:/tmp$ cp test2 .


cp: -r not specified; omitting directory 'test2'


coding@DESKTOP-5MQ0I0D:/tmp$ cp /etc/services .


coding@DESKTOP-5MQ0I0D:/tmp$ ls


20190304test001.txt all.tar.xz bashrc services test2 testing


coding@DESKTOP-5MQ0I0D:/tmp$ mv 20190304test001.txt test2


coding@DESKTOP-5MQ0I0D:/tmp$ ls


all.tar.xz bashrc services test2 testing


coding@DESKTOP-5MQ0I0D:/tmp$ ls test2


20190304test001.txt


coding@DESKTOP-5MQ0I0D:/tmp$ rm test2


rm: cannot remove 'test2': Is a directory


coding@DESKTOP-5MQ0I0D:/tmp$ rm test2/20190304test001.txt


coding@DESKTOP-5MQ0I0D:/tmp$ ls test2


coding@DESKTOP-5MQ0I0D:/tmp$ rmdir test2


coding@DESKTOP-5MQ0I0D:/tmp$ ls


all.tar.xz bashrc services testing


coding@DESKTOP-5MQ0I0D:/tmp$


SUID(SetUID) :将 user 的 x 权限变成 s 如:-rwsr-xr-x


SGID(SetGID):将 group 的 x 权限变成 s 如:-rwxr-sr-x


whatis 指令 : 表示这指令是做什么的


which 指令 :指令所在的目录


whereis 指令:指令的位置


coding@DESKTOP-5MQ0I0D:/tmp$ whatis ls


ls (1) - list directory contents


coding@DESKTOP-5MQ0I0D:/tmp$ which ls


/bin/ls


coding@DESKTOP-5MQ0I0D:/tmp$ whereis ls


ls: /bin/ls /usr/share/man/man1/ls.1.gz


coding@DESKTOP-5MQ0I0D:/tmp$


文件系统通常会将这两部


份的数据分别存放在不同的区块,权限与属性放置到 inode 中,至于实际数据则放置到 data block 区块中。


Hard Link:


通过文件系统的 inode 链接来产生新文件名,而不是产生新文件!这种称为实体链接


Symbolic Link


Symbolic link 就是在创建一个独立的文件,而这个文件会让


数据的读取指向他 link 的那个文件的文件名!由于只是利用文件来做为指向的动作, 所以,当来源文件被删除之后,symbolic link


的文件会“开不了”, 会一直说“无法打开某文件!”


Hard Link 和 Symbolic Link 的区别:Hard Link 是对源文件的 inode 取了一个新的名称,通过源文件或链接文件都可以访问到 inode 存储的内容,也就是说源文件和链接文件对应的 inode 是一样的。所以即使删掉了源文件,通过链接文件还是可以访问的。而 Symbolic Link 会产生一个新的文件记录下源文件的位置,访问链接文件,实际上是通过读取里面的信息从而找到源文件进行访问。也就是说源文件和链接文件的 iNode 是不一样的,并且当文件删除后,再次访问链接文件会报错找不到源文件的。


coding@DESKTOP-5MQ0I0D:/tmp$ ln testing/20190304test001.txt .


coding@DESKTOP-5MQ0I0D:/tmp$ ls -li . testing/


.:


total 24


36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt


25332747903961015 -rw-rw-rw- 1 coding coding 304 Mar 5 14:07 all.tar.xz


10696049115236520 -rw-r--r-- 1 coding coding 3771 Feb 28 19:47 bashrc


55732045388840168 -rw-r--r-- 1 coding coding 19183 Mar 5 15:38 services


27021597764376606 drwxr--r-- 1 coding coding 512 Mar 5 16:12 testing


testing/:


total 0


36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt


coding@DESKTOP-5MQ0I0D:/tmp$


coding@DESKTOP-5MQ0I0D:/tmp$ ln -s testing/20190304test001.txt 20190304tets002.txt


coding@DESKTOP-5MQ0I0D:/tmp$ ls -li


total 24


36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt


23362423067085188 lrwxrwxrwx 1 coding coding 27 Mar 5 16:17 20190304tets002.txt -> testing/20190304test001.txt


25332747903961015 -rw-rw-rw- 1 coding coding 304 Mar 5 14:07 all.


【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


tar.xz


10696049115236520 -rw-r--r-- 1 coding coding 3771 Feb 28 19:47 bashrc


55732045388840168 -rw-r--r-- 1 coding coding 19183 Mar 5 15:38 services


27021597764376606 drwxr--r-- 1 coding coding 512 Mar 5 16:12 testing


coding@DESKTOP-5MQ0I0D:/tmp$


文件压缩


gzip


bzip2


xz


三者的语法基本都差不多,gzip 效率最差,但是速度最快


xz 效率最高,但是耗时最长。


选项与参数:


-c :将压缩的数据输出到屏幕上,可通过数据流重导向来处理;


-d :解压缩的参数;


-t :可以用来检验一个压缩文件的一致性~看看文件有无错误;


-v :可以显示出原文件/压缩文件的压缩比等信息;


-# :# 为数字的意思,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!默认是 -6


打包指令 tar


选项与参数:


-c :创建打包文件,可搭配 -v 来察看过程中被打包的文件名(filename)


-t :察看打包文件的内容含有哪些文件名,重点在察看“文件名”就是了;


-x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开


特别留意的是, -c, -t, -x 不可同时出现在一串命令行中。


-z :通过 gzip 的支持进行压缩/解压缩:此时文件名最好为 *.tar.gz


-j :通过 bzip2 的支持进行压缩/解压缩:此时文件名最好为 *.tar.bz2


-J :通过 xz 的支持进行压缩/解压缩:此时文件名最好为 *.tar.xz 特别留意, -z, -j, -J 不可以同时出现在一串命令行中


-v :在压缩/解压缩的过程中,将正在处理的文件名显示出来!


-f filename:-f 后面要立刻接要被处理的文件名!建议 -f 单独写一个选项啰!(比较不会忘记)


-C 目录 :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。


其他后续练习会使用到的选项介绍:


-p(小写) :保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件


-P(大写) :保留绝对路径,亦即允许备份数据中含有根目录存在之意;


–exclude=FILE:在压缩的过程中,不要将 FILE 打包!


**其实最简单的使用 tar 就只要记忆下面的方式即可


.bz2 结尾的


压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称


查 询:tar -jtv -f filename.tar.bz2


解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录


.gz 结尾的


压 缩:tar -zcv -f filename.tar.bz2 要被压缩的文件或目录名称


查 询:tar -ztv -f filename.tar.bz2


解压缩:tar -zxv -f filename.tar.bz2 -C 欲解压缩的目录


**


coding@DESKTOP-5MQ0I0D:/tmp$ bzip2 services


coding@DESKTOP-5MQ0I0D:/tmp$ ll


total 12


drwxrwxrwt 1 root root 512 Mar 5 16:26 ./


drwxr-xr-x 1 root root 512 Feb 27 14:33 ../


-rw-r--r-- 1 coding coding 3771 Feb 28 19:47 bashrc


-rw-r--r-- 1 coding coding 7108 Mar 5 15:38 services.bz2


drwxr--r-- 1 coding coding 512 Mar 5 16:12 testing/


coding@DESKTOP-5MQ0I0D:/tmp$ bzip2 -kd services.bz2


coding@DESKTOP-5MQ0I0D:/tmp$ ll


total 44


drwxrwxrwt 1 root root 512 Mar 5 16:27 ./


drwxr-xr-x 1 root root 512 Feb 27 14:33 ../


-rw-r--r-- 1 coding coding 3771 Feb 28 19:47 bashrc


-rw-r--r-- 1 coding coding 19183 Mar 5 15:38 services


-rw-r--r-- 1 coding coding 7108 Mar 5 15:38 services.bz2


drwxr--r-- 1 coding coding 512 Mar 5 16:12 testing/


coding@DESKTOP-5MQ0I0D:/tmp$


coding@DESKTOP-5MQ0I0D:/tmp$ tar -jcv -f testing.bz2 testing/


testing/


testing/20190304test001.txt


coding@DESKTOP-5MQ0I0D:/tmp$ ll


total 44


drwxrwxrwt 1 root root 512 Mar 5 16:28 ./


drwxr-xr-x 1 root root 512 Feb 27 14:33 ../


-rw-r--r-- 1 coding coding 3771 Feb 28 19:47 bashrc

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
初探Linux--鸟哥私房菜读书笔记,廖雪峰java教程百度云