linux学习之路

描述linux发行版的系统目录名称命名规则以及用途

boot:存放linux启动文件 内核
etc:存放配置文件
home:用户家目录
root:root用户家目录
dev:设备文件
bin:存放二进制程序,给普通用户使用
sbin:存放二进制程序,给系统管理员用的
usr:系统资源目录,程序安装目录,
tmp:临时文件夹,
var:临时数据,可变化的数据
proc: 进程信息
sys:映射硬件信息
官方说明:http://www.pathname.com/fhs

linux文件命名规则

文件名最长255个字节
名称路径在内文件名称最长4095个字节
除了斜杠和NUL,所有字符都有效,但使用特殊字符的目录名和文件不推荐使用,
有些字符需要用引号来引用它们

文件颜色代表文件种类

蓝色为目录
绿色为可执行文件
红色为压缩文件
浅蓝色为链接文件
灰色为其他文件
粉色为套接字文件
棕色为管道文件

描述文件的元数据信息,分别表示的含义

linux文件数据由两部分组成, 数据与元数据

stat file 查看文件元数据信息
[[email protected] ~]# stat test
File: ‘test’
Size: 45 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 201557958 Links: 1
Access: (0644/-rw-r–r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2020-06-19 15:14:24.960082440 +0800
Modify: 2020-06-19 15:14:24.960082440 +0800
Change: 2020-06-19 15:14:24.960082440 +0800

File:文件名
Size:文件大小(单位:B)
Blocks:文件所占扇区个数,为8的倍数(通常的 Linux 的扇区大小为 512 B,连续八个扇区组成一个block)
IO Block:每个数据块的大小(单位:B)
regular file:普通文件(此处显示文件的类型)
Inode:文件的Inode号
Links:硬链接次数
Access:权限
Uid:(属主id/属主名)
Gid:(属组id/属组名)
Access:最近访问时间
Modify:数据改动时间
Change:元数据改动时间

修改时间戳

Access时间戳,只要是读取操作都可以更改,touch,cat,grep,tail,more,head,sed,
读时间超过一天会更新,一天内频繁读取不会更改
Modify时间戳,文件修改时间,文件内容发生改变时,就会修改
Change时间戳,文件元数据改变时会改变,例如更换属主,属组,文件内容,更改文件名,创建硬链接

硬链接与软链接区别

1:本质:硬链接,同一个文件多个名字 软链接:不同文件
2:跨分区 硬链接不可以跨分区 跨设备 软链接可以
3:目录 硬链接不可以创建文件夹链接 软链接可以
4:相互关系 硬链接和源文件之间没有相互关系 软链接删除源文件 软链接也会无法访问
5:inode 硬链接 相同 软链接不相同
6:连接数
7:路径
8 : 文件类型
硬链接文件inode号相同,本质为同一个文件
[[email protected] ~]# link test test.link
[[email protected] ~]# ll -i
total 8
201557958 -rw-r–r--. 2 root root 45 Jun 19 15:16 test
201557958 -rw-r–r--. 2 root root 45 Jun 19 15:16 test.link
硬链接不能跨分区,跨设备:
[email protected] ~]# ln test.link /data1/test.link.bak
ln: failed to create hard link ‘/data1/test.link.bak’ => ‘test.link’: Invalid cross-device link
删除源文件后,软链接无法访问
[[email protected] ~]# rm test
rm: remove regular file ‘test’? y
[[email protected] ~]# cat /data1/test.link
cat: /data1/test.link: No such file or directory
[[email protected] ~]# cd /data1/
[[email protected] data1]# ll
total 16
drwx------. 2 root root 16384 Jun 19 15:41 lost+found
lrwxrwxrwx. 1 root root 10 Jun 19 15:48 test.link -> /root/test
软链接文件类型为链接文件, 硬链接类型为普通文件
lrwxrwxrwx. 1 root root 10 Jun 19 15:48 test.link -> /root/test

文件管理命令

cp
cp常用选项
-i:覆盖前提示 建议使用,防止数据丢失
-n :不覆盖
-r,-R :递归复制目录及其内部的所有内容
-a :归档,相当于-dR --preserv=all
-d --no-dereference --preserv=links :不复制原文件,只复制链接名
-b:目标存在,覆盖前先备份,文件名为filename~
-f --force
-u --update:只复制源比目标更新文件或目标不存在的文件
–preserv[=ATTR_LIST]
mode:权限
owners:属主,属组
timestamp:
links
xattr
context
all
建议备份使用 cp -a file file.bak
linux学习之路
mv 移动和重命名文件
mv [option] SOURCE DEST
常用选项
-i:交互式
-f:强制
-b:如果目标存在,覆盖前先备份
rm 删除
rm[option] FILE
-i:交互式
-f:强制删除
-r:递归
mkdir 创建目录
-p:递归创建,自动创建所需的个目录
-v:显示详细信息
-m MODE:创目录时直接指定权限
rmdir 删除空目录
-p:递归删除父目录
-v:显示详细信息

复制/etc/profile至/tmp目录, 用查找替换命令删除/tmp/profile文件中的行首的空白字符

cat /tmp/profile | tr -d " "

在vim中设置tab缩进为4个字符

在/etc/vimrc文件中添加一行
set tabstop=4