1、描述Linux发行版的系统目录名称命名规则以及用途
2、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
3、总结软连接和硬连接区别,并用实例操作说明。
4、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
5、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符
6、在vim中设置tab缩进为4个字符
1、描述Linux发行版的系统目录名称命名规则以及用途
文件名严格区分字符大小写;目录也是文件,在同一路径下,文件不能重名;支持使用除/以外的任意字符;最长不能超过255个字符。
/:根目录
/bin:存放所有用户可用的基本命令程序文件
/sbin:存放供系统管理使用的工具程序
/boot:引导加载器必须用到的静态文件:kernel, initramfs(initrd), grub等
/dev:存储特殊文件或设备文件
/etc:系统程序的配置文件,只能为静态
/home:普通用户的家目录,一般每个普通用户的家目录默认为此目录下与用户名相同的子目录;/home/USERNAME
/root:管理员的家目录
/lib:为系统启动或根文件系统上的应用程序(/bin , /sbin等)提供共享库,以及为内核提供内核模块
/lib64:64位系统特有的存放64位共享库的路径
/media:便携式设备挂载点
/mnt:其他文件系统的临时挂载点
/opt:附加应用程序的安装位置;可选的路径
/srv:当前主机为服务提供的数据
/tmp:为那些会产生临时文件的程序提供用于存储临时文件的目录;可供所有用户写入操作,有特殊权限
/usr:usr hierarchy,全局共享的只读数据路径
bin, sbin
lib , lib64
include: C程序头文件
share : 命令手册页和命令自带文档等架构特有的文件的存储位置
local : 另一个层级目录
X11R6 : X-window程序的安装位置
src : 程序源码文件的存储位置
/usr/local:local hierarchy,让系统管理员安装本地应用程序;通常用于安装第三方程序
/var:存储经常发生变化的数据的目录,如日志
/proc:基于内存的虚拟文件系统,内核和进程存储其相关信息,它们多为内核参数,例如内核参数net.ipv4.ip_forward,会将其虚拟为net/ipv4/ip_forward,存储与/proc/sys目录下,其完整路径为:/proc/sys/net/ipv4/ip_forward
/sys: sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径,基于内存的虚拟文件系统,其主要作用在于为管理linux设备提供一种统一模型的接口
2、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
文件的数据分为两种:元数据(metadata)和数据(data);元数据为文件的属性数据;使用stat命令可以查看文件的元数据:
例如:stat /etc/issue
File: ‘/etc/issue’
Size: 23 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 16777320 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:etc_t:s0
Access: 2019-12-02 04:25:17.224948543 -0500
Modify: 2019-09-05 09:05:40.000000000 -0400
Change: 2019-11-26 05:05:29.578997993 -0500
Birth: -
其中file文件名;size文件大小;blocks文件占了多少数据块;IO block文件所占数据块的块大小;device硬件,说明文件在硬盘的哪个柱面;inode节点号;links文件的链接数;access权限;uid文件所属主;gid文件所属组;context安全上下文;Access最近一次访问文件的时间;modify最近一次改动文件数据的时间;change最近一次改动文件属性元数据的时间;
修改文件的时间戳信息:(access,modify,change为时间戳)
使用touch命令修改文件时间戳:
语法:touch [OPTION]...FILE...
主要选项:
-a:仅修改access time为当前系统时间
-c:指定文件不存在时,不予创建
-m:仅修改modify time为当前系统时间
-t STAMP:使用指定的时间[[CC]YY]MMDDhhmm[.ss]格式代替当前时间
-r:使用某文件的时间戳代替当前时间修改access和modify
3、总结软连接和硬连接区别,并用实例操作说明。
硬链接:指向同一个inode的多个文件路径;目录不支持硬链接;硬链接不能跨文件系统;创建硬链接会增加文件属性中的inode引用计数。使用命令格式:"ln 原文件 链接"
软链接:指向一个文件路径的另一个文件路径;软链接与原文件为两个各自独立的文件,各自有自己的inode,对原文件创建软链接不会增加inode引用次数;目录也可以创建软链接,并且可以跨文件系统创建;删除软链接不会影响原文件,但删除原文件,软链接指定的路径即不存在,此时会成为无效链接;软链接的文件大小是其指向的文件的路径字符串的字节数。使用命令格式:"ln -s 原文件 链接"
实例操作
查看/etc/issue当前links链接数
创建硬链接/etc/issue的硬链接到/tmp/issue
查看/etc/issue的Links链接数
创建目录/etc/的硬链接
创建/etc/issue的软链接到/tmp/lnsissue
查看/etc/issue属性中的links链接数
4、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
cp命令:
复制文件或目录
命令格式:
单源复制: cp [OPTION]... [-T] SOURCE DEST;
如果DEST不存在,则先创建文件,并复制源文件的数据流至DEST;
如果DEST存在:
如果DEST是非目录文件:则会覆盖目标文件
如果DEST是目录文件:现在DEST目录下创建一个与源文件同名的文件,并复制其数据流
多源复制:cp [OPTION]... SOURCE... DIRECTORY; cp [OPTION]... -t DIRECTORY SOURCE...
如果DEST不存在:错误
如果DEST存在:
如果DEST是非目录文件:错误
如果DEST是目录文件:分别复制每个文件至目标目录中并保持原名
常用选项:
-i :交互式复制,即覆盖之前提醒用户确认
-f : 强制覆盖目标文件
-r : 递归复制目录
-d : 复制符号链接文件本身,而非其指向的源文件
-a : -dR 归档
使用实例:
# cp /etc/passwd /tmp/ 复制/etc/passwd文件到/tmp/目录
mv命令:
移动或者重命名文件名
命令格式:
mv [OPTION]... [-T] SOURCE DEST;mv [OPTION]... SOURCE... DIRECTORY;mv [OPTION]... -t DIRECTORY SOURCE...
常用选项:
-i: 交互
-f : force,覆盖前不提示
使用实例:
~]# mv text1.txt text2.txt 将root目录下的文件text1.txt重命名为text2.txt
~]# mv text2.txt /etc/ 将root目录下的文件text2.txt移动到/etc/目录下
rm命令:
删除文件或目录
命令格式:
rm [OPTION]... FILE...
常用选项:
-i : interactive,交互
-f : force,忽略不存在的文件和参数,且不提示
-r : recursive,递归
删除目录:rm -rf /PATH/TO/DIR
危险操作:rm -rf /*
注意:所有文件都不要直接删除,而是移动至某个专用目录(模拟回收站)
使用实例:
~]# rm -f /etc/text2.txt 删除/etc/目录下的文件text2.txt ,并且不提示是否删除
cd命令:
切换用户的工作目录,路径可表示为绝对路径或者相对路径。
使用实例:
工作目录切换到/etc/;
切换到当前用户主目录;
切换到用户上一次所在的目录;
切换到上级目录;
pwd命令:
以绝对路径方式显示用户当前所在的工作目录
使用实例:
ls命令:
显示指定文件目录的文件信息,默认显示当前目录下的文件信息
命令格式:
ls [OPTION]... [FILE]...
常用选项:
-a, --all :显示所有文件包含隐藏文件
-A : 显示除.和..之外的所有文件
-l : --long , 长格式列表,即显示文件详细的属性信息
-h : --human-readable:对文件大小单位进行换算:换算后结果可能会非精确值
-d : 查看目录自身而非其内部的文件列表
-r : 逆序显示
-R : 递归显示
-i :显示文件元数据编号
cat命令:
文本文件内容查看
命令格式:
cat [OPTION]... [FILE]...
常用选项:
-n : 给显示的文本行统一编号
-E : 显示行结束符$
mkdir命令:
创建目录
命令格式:
mkdir [OPTION]... DIRECTORY...
常用选项:
-p:自动按需创建父目录
-v:显示详细过程
-m:直接给定权限
rmdir命令:
删除空目录
命令格式:
rmdir [OPTION]... DIRECTORY...
常用选项:
-p:删除某目录后,如果其父目录为空,则一并删除
-v:显示过程
5、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符
~]# cp /etc/profile /tmp/
~]# vim /tmp/profile
末行模式下执行:
%s@^[[:space:]]*@@
6、在vim中设置tab缩进为4个字符
在末行模式下设定,仅对当前vim进程有效:
set ts=4
永久有效
全局:/etc/vimrc
用户个人:~/.vimrc
echo "set ts=4" >> /etc/vimrc 全局下设置永久有效