day 11 inode与block 硬链接与软连接

一 、排除与管道符

创建压缩包 zcf
查看压缩包 tr
解压压缩包 xf
解压到指定目录下 -C
排除 打包压缩时排除某个文件 --exclude

[root@apple ~]# tar tf /tmp/apple-paichu.tar.gz | grep services
[root@apple ~]# tar zcf /tmp/etc.tar.gz /etc/
tar: Removing leading `/' from member names
[root@apple ~]# tar zcf /tmp/etc-paichu.tar.gz /etc/ --exclude /etc/services
                排除/etc/services的文件
tar: Removing leading `/' from member names

如何检查排除成功

[root@apple ~]# tar tf /tmp/etc.tar.gz | grep services
             过滤出包含services的行
etc/services
etc/firewalld/services/
[root@apple ~]# tar tf /tmp/etc-paichu.tar.gz | grep services
             排除以后得结果
etc/firewalld/services/

| 管道符号 把管道前面命令的结果 通过管道传递给后面的命令

二、Linux下面的对比工具

(比较两个文件的内容)

diff===different

[root@apple ~]# tar tf /tmp/etc.tar.gz >/apple/tar.txt
[root@apple ~]# tar tf /tmp/etc-paichu.tar.gz >/apple/tar-paichu.txt
>  输出重定向  把左面的内容写入到右面的文件中  清空之前的内容
>>追加输出重定向 把内容写入到文件最后一行
[root@apple ~]# diff /apple/tar.txt /apple/tar-paichu.txt
1957d1956
< etc/services

vimdiff命令 分屏幕显示目录下文件的不同
退出时需要操作两次

[root@apple ~]# vimdiff /apple/tar.txt /apple/tar-paichu.txt
2 files to edit

+ +--1950 lines: etc/-----------------------|+ +--1950 lines: etc/-------------
  etc/udev/hwdb.bin                         |  etc/udev/hwdb.bin
  etc/dhcp/                                 |  etc/dhcp/
  etc/dhcp/dhclient-exit-hooks.d/           |  etc/dhcp/dhclient-exit-hooks.d/
  etc/dhcp/dhclient-exit-hooks.d/azure-cloud|  etc/dhcp/dhclient-exit-hooks.d/azure-clou
  etc/dhcp/dhclient.d/                      |  etc/dhcp/dhclient.d/
  etc/dhcp/dhclient.d/chrony.sh             |  etc/dhcp/dhclient.d/chrony.sh
  etc/services                              |  -----------------------------------------
  etc/machine-id                            |  etc/machine-id
  etc/shadow                                |  etc/shadow
  etc/localtime                             |  etc/localtime
  etc/subgid                                |  etc/subgid
  etc/NetworkManager/                       |  etc/NetworkManager/
  etc/NetworkManager/dispatcher.d/          |  etc/NetworkManager/dispatcher.d/
+ +--493 lines: etc/NetworkManager/dispatche|+ +--493 lines: etc/NetworkManager/dispatch                     

三、lrzsz 软件包 默认需要安装

lrzsz 把文件上传或下载到Linux

[root@apple ~]# rpm -qa lrzsz
查看是否安装软件
lrzsz-0.12.20-36.el7.x86_64

rz 把Windows文件上传到Linux
在xshell下,将Windows文件打开 直接拖入窗口

[root@apple ~]# rz
[root@apple ~]# ll
total 24
-rw-------. 1 root root  1470 Mar 31 11:25 anaconda-ks.cfg
-rw-r--r--. 1 root root 18990 Apr  2 16:24 基础命令练习题.docx

sz 把Linux文件下载到Windows

[root@apple ~]# sz /apple/tar.txt

四、date 显示或者设置时间

显示时间

[root@apple ~]# date
Wed Apr 10 17:30:38 CST 2019
cst  时区 

按照要求的格式显示当前内容:年-月-日

[root@apple ~]# date +%F
2019-04-10
[root@apple ~]# date +%Y-%m-%d
2019-04-10  显示年月日
[root@apple ~]# date +%Y
2019  显示年份
[root@apple ~]# date +%T
17:39:55  显示时间
[root@apple ~]# date "+%Y -%m -%d %H:%M:%S"
2019 -04 -10 17:38:44
[root@apple ~]# date +%w
3   周几

显示几天之前的时间
-d 根据你的描述显示时间

[root@apple ~]# date -d "1 day ago"
Tue Apr  9 17:46:27 CST 2019

[root@apple ~]# #几天之前-day
[root@apple ~]# date -d "-1 day"
Tue Apr  9 17:48:32 CST 2019

[root@apple ~]# #几天之后数字+day
[root@apple ~]# date -d "10day"
Sat Apr 20 17:49:13 CST 2019

[root@apple ~]# #显示1天前时间以年月日-周几格式
[root@apple ~]# date +%Y%m%d-%w -d "-1day"
20190409-2

[root@apple ~]# #显示7天前时间 以年_月_日-小时_周几 格式
[root@apple ~]# date +%Y_%m_%d-%H_%w -d '-7day'
2019_04_03-17_3

格式实际应用操作:
备份 备份时分不清文件加上时间来区别

修改时间:

date -s “20111111 11:11:11”
自动同步时间 软件命令
-ntpdate 根据网上的时间 或者是网站时间来修改系统的时间

  • centos6默认 7 需要单独安装
    ntp1.aliyun.com
ntpdate ntp1.aliyun.com
显示sec即成功

五、文件属性深入

ls -lhi
-l 显示详细信息
-h以人类可读的形式显示大小
-i 显示文件或者目录的inode号码
echo -n 不显示每行结尾的回车
free -h
inode block

inode

含义:inode index node 索引节点 inode号码(身份证) inode空间
inode空间 存放文件属性信息
(大小 所有者 权限 文件类型 硬连接数 时间) 文件名没有存放在这里
block的位置

block 数据块

作用:用来存放文件的内容(实体)
inode与block的关系:

  • 显示文件内容 cat apple.txt 与inode和block关系?


    day 11 inode与block 硬链接与软连接_第1张图片
    QQ图片20190410192931.png

    特点:
    inode:

  • 一般是256字节(了解)
  • Linux下面创建一个非空文件需要占用1个inode和至少一个block。
  • inode在同一个分区(文件系统)中是唯一的。
  • 查看文件或目录:ls -i
    block:
  • block大小默认为4k
    -文件比较小1k ,剩余的3k将无法使用。
    -文件比较大10G,占用多个block。
  • ls -lh block大小
  • 查看整体情况:block一共有多少 还剩多少(查看磁盘使用空间情况)
[root@apple ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        20G  1.6G   18G   9% /
devtmpfs        900M     0  900M   0% /dev
tmpfs           910M     0  910M   0% /dev/shm
tmpfs           910M  9.6M  901M   2% /run
tmpfs           910M     0  910M   0% /sys/fs/cgroup
/dev/sda1       197M  116M   82M  59% /boot
tmpfs           182M     0  182M   0% /run/user/0

inode 一共有多少 还剩多少

[root@apple ~]# df -i
Filesystem      Inodes IUsed   IFree IUse% Mounted on
/dev/sda3      9973248 59354 9913894    1% /
devtmpfs        230178   373  229805    1% /dev
tmpfs           232903     1  232902    1% /dev/shm
tmpfs           232903   706  232197    1% /run
tmpfs           232903    16  232887    1% /sys/fs/cgroup
/dev/sda1       102400   327  102073    1% /boot
tmpfs           232903     1  232902    1% /run/user/0

六、Linux硬链接与软连接:

硬链接:
    含义    超市的前后门(多个入口)
             在同一个磁盘分区中 inode号码相同的文件互为硬链接
             预防误删除操作
             ln apple apple.txt
             ls -lhi Apple.txt*    .bak 备份
软连接:
    含义    Windows里面的快捷方式 
             软连接 符号链接 存放源文件的位置 ls  -l
             创建软连接:ln -s 源文件  创建链接文件名
             指向源文件的链接 源文件丢失  软连接失效

软连接与硬链接的区别:

1)如何创建
  硬链接 ln   软连接需要参加参数 -s
2)含义
  在同一分区硬链接文件与源文件的inode节点号相同 
  而软连接相当于Windows中的快捷方式 inode不同
3)特点
  不能对目录创建硬链接 但是可以创建软连接 对目录的软连接会被经常用用到
  软连接可以跨文件系统  硬链接不可以跨文件系统
4)怎么没的
   删除软连接时  对源文件以及硬链接没有任何影响
   删除文件的硬链接文件  对硬链接文件没有影响 
   删除链接文件的源文件 对硬链接文件没有影响 会导致其他软连接失效
   同时删除源文件及其硬链接文件 整个文件才会被真正删除

你可能感兴趣的:(day 11 inode与block 硬链接与软连接)