Linux-文件系统-学习笔记

1、文件系统与目录结构


在不重启的情况下,磁盘扫描搜索新增加的磁盘的方法:

echo '- - -' > /sys/class/scsi_host/host2/scan


centos6和centos7 根目录差别:

run目录是centos7新增加的


除了/\以及nul以外,理论上其他字符都可以用作文件名:

touch  "a b"   创建了叫a b的文件

touch  /root/-a   创建了叫-a的文件

但不建议这样做,避免引起不必要的误读和操作麻烦


命令: lsblk  = list  block  列出块设备的意思


dd   if=/dev/zero   of=/data/bigfile   bs=1m   count=1024

以上命令实现在data目录下生成一个1G的bigfile文件,从dev目录中用0填满bigfile


pwd  -P    绝对路径

显示当前目录或文件夹真实路径


../     ./  相对路径

../   表示父目录   ./表示当前目录


命令:basename   文件路径

只查看路径的基名

命令: dirname    文件路径

只查看路径的基目录,不要文件


du  -sh    /*

查看并列出根目录下各文件大小(如此类推)


*文件系统如果是NTFS格式,则linux系统默认是无法识别的


cd  ~tiny

直接进tiny用户的家目录


cd   - 

回到刚才离开的目录


echo  $OLDPWD

$OLDPWD记录上一次进入过的文件夹路径


2、ls 命令

ls   -R  

递归显示文件夹内的所有文件


ls  -ld     (ls   -l  相当于 ll)

显示当前文件夹内各文件(或文件夹)的详细列表,不显示递归子文件


ll  /bin   与ll  /bin/  效果不一样  /bin实际上是个软链接


ls  /data  -1

单列显示


文件名优先级排列顺序:

数字 > 字母(不区分大小写) > 字母+数字


ls   -S 

按文件大小排序(默认从大到小)

ls   -Sr

按文件大小排序(从小到大)


ls   -t

按修改时间(mtime)排序(从最新到最旧)


ll   --time=atime    /data/file

查看读文件/data/file的时间

ll   --time=ctime    /data/file

查看/data/file文件的元数据的变化时间


stat   /data/file

 查看/data/file文件的三个时间,数据修改时间,读取时间,元数据修改时间


ls   -ltu

按atime从新到旧,详细列表排序


ls   -U

按创建时间从新到旧 排序


ls   -X

按文件后缀排序


ls   -d  */

只显示当前文件夹的内容,不显示子文件夹内容


3、文件通配符


通配符  *   代表文件名的字符(不代表文件内容)


ls  ?

查看文件名是单个字符的文件


ls  ~-/file

查看上个浏览过的文件的file文件夹


ls   file[1..20]


 显示名称是1到2和0的file前缀文件夹,..在里面没用

ls  file  [137]

表示显示file文件名包含1或者3或者7的文件

ls  file[1-7]  或者ls  file{1..7}   (花括号内这样书写获得顺序)

显示文件名包含1234567顺序的文件

笛卡尔积的ls文件查看,按照ASCII码规则显示文件

ls  f[wang]

表示查看文件名f +w或 a或 n或 g 四个字符的f文件

ls  f[^wang]

表示查看不包含w a n g 四个字符的f文件

ls  -d  .*   (也可以  l.  )

只显示当前目录的隐藏文件


ls  -R   .[^.]*   (排除 ..)

显示当前目录的隐藏子文件


4、touch命令


touch    路径/新建文件名

如果文件名已经存在,touch命令并不会新建并覆盖原有文件,但会把原有文件的三时间刷新到现在。


touch   -t   201910200830.50   /etc/hosts

指定了/etc/hosts文件的atime和mtime的时间戳


touch  -c   f2

如果f2文件不存在,则不创建  (多用来刷新文件的三时间)


touch  `date  -d   "-1 day"  +%F`.log

反向单引号嵌套日期命令,创建指定日期的.log文件名文件


5、cp命令


cp    etc/hosts    ~tiny/

被复制到的地址,tiny家目录后没有明确文件名,则自动生成同名hosts文件,如果tiny家目录下已经有hosts文件,则直接覆盖,如果在管理员账户下,系统询问你是否覆盖。

为什么呢?

在root账号里,cp命令并不是真cp,而是别名 cp -i  ,将会询问你是否覆盖


cp    文件1   文件2    目标文件目录

当多个文件复制到一个文件目录下时,目标文件必须是文件夹,否则报错


cp   -r   文件夹    目标文件目录

必须加-r才可以复制文件夹

如果以上操作再一次执行,那么文件夹会直接被复制进新建的文件夹底下,成了子文件夹


cp    -a    (包含-d  -p  -r  ,保留软链接,保留文件原有属性,递归复制子文件)

可用于完整文件复制,相当于文件备份


cp   -av  

可以看到复制过程(但容易造成死机)


cp  -u

只复制新文件到旧同名文件,旧文件不会覆盖新同名文件


cp   --backup=numbered  复制文件   被复制文件   

以上命令,被复制文件会被覆盖,但事先会生成一份备份,可避免误操作


cp   /data/*   /data/f1

以上复制命令,*表示data目录下的所有文件,但是有个问题要注意,*并不包含.后缀的隐藏文件。

cp  -a   /dev/sda   /data

复制设备文件,加-a ,只复制设备文件的属性


rename  "conf"  "conf.bak"   file*

rename命令,批量改名,将原来带.conf后缀的file.conf文件名,增加后缀.bak,变成file.conf.bak


6、mv命令


mv  a   b

没有指明路径,则表示将a文件改名为b,对于文件夹也适用

mv  downloads/   D

改文件夹名字为D


mv  -t    移入的目录   移出的目录

移出目录与移入目录的位置对调


在root管理员下,mv  rm  都是别名,会询问你是否覆盖或者是否删除


7、rm命令


rm   -r  文件

递归删除文件


rm  -rf    文件

强行删除文件(慎用)


rm  -rf     /    --no-preserve-root 

强行删除根目录下所有文件(非常危险)


出于安全起见,可以把rm定义成别名,别名实际是mv


lsof   | grep deleted

以上命令可查看部分已经被删除了的文件,但还未释放空间。有的时候当一个用户删除了一个文件,但同时另一个终端的用户在占用这个文件,就会出现这类情况。


>    file

rm    -f    file

  使用以上方法删除大文件file,可确保空间立即被释放。


8.tree命令

centos7系统默认没有安装tree程序包:

输入:rpm   -ivh  /run/media/root/CentOS\ 7\ x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm

可进行安装。


mkdir  -p   /data/dir1/dir2/dir3/dir4

自动判断并创建子目录dir1/dir2/dir3/dir4


rmdir   /data/dir1

删除子目录(目录必须是空的才可以删)相比rm命令,rmdir相对安全,只能删除空目录


rmdir    -p   /data/dir1

递归删除子目录(只要递归的目录是空的就可以删)


cp    /etc/hosts{,.bak}

以上命令利用花括号构成参数组合,等价于:

cp   /etc/hosts    /etc/hosts.bak

表示对hosts文件在本地etc文件夹复制一份进行备份hosts.bak



9、索引节点


inode  --》节点编号

ls  -i

可以查看当前文件夹下各文件的节点编号

节点编号在同一个磁盘分区下,是唯一的


直接指针最大容量为48K=12X4k

间接指针通过不断生成间接指针表,一个表4k,一个表指针4字节,则一个表可以接受1024个间接指针,如此类推,4字节X1024X1024X1024。。。

df  -i

以上命令 查看各磁盘空间内的节点编号存量


**如果系统遇到显示磁盘空间满,但是实际上查询空间没有满的情况,这个问题很可能就是节点编号被消耗干净了,创建空文件也会占用节点编号。


当命令参数过多时:

命令会报错

echo  file{1..100000}  | xargs  rm

以上命令可以批量删除花括号组合文件(参数过多时使用)


对于目录的文件结构:

要访问f1 ,f2 文件,首先要查看目录的节点编号,再通过节点编号找到目录的数据内容,目录的数据内容就是所存放的f1,f2两个文件名以及各自的节点关系,如:f1对应1000号节点 ,f2对应2000号节点。


**当系统删除文件f1时,系统实际上是删除了f1的节点空间。实际的数据内容空间,并未第一时间删除。等待新的数据对它进行覆盖


*shred  -zv  hosts

*shred  -zv  -n 6  hosts  (覆盖6次)

以上命令是利用其它字符覆盖hosts的内容,真正删除文件数据内容



10、软链接和硬链接


ln  f1  f2

创建硬链接,f1和f2 两个节点编号相同


2是指链接数,f1,f2,随着硬链接数量增长

**硬链接本质上是同一个文件,起了多个名字。

**假如用rm删除了f2,对读写f1不受影响

**硬链接和windows里面的快捷方式,有区别

**硬链接的创建,不能跨分区

**硬链接不支持目录的创建


ln  -s   f2  f2link

创建软链接,f2和f2link 节点编号不同

**软链接之间的文件大小毫无关系

**如果软链接的原文件f2被删除,则链接不能访问f2

**软链接可以跨分区创建

**软链接可以创建目录链接

**  ll -i   查看的链接数不会增长


以上创建f2的软链接时出现红色错误。要避免创建错误,输入的f2路径必须是相对于目标位置/root/的路径,而不能是相对于当前目录data下的路径。也可以直接键入f2的绝对路径。


readlink   文件名

直接查看文件的软链接


11、file命令

file    文件

例: file  tree.txt

以上命令可以查看文件属于什么类型(文本、压缩、可执行程序),而判断文件类型的方式是看该文件的头部信息,叫magic number

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容