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

一、描述Linux发行版的系统目录名称命名规则以及用途。

目录命名规则:
(1)文件名最长255个字节
(2)包括路径在内文件名称最长4095个字节
(3)除了斜杠和NUL,全部字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符须要用引号来引用它们
(4)标准Linux文件系统(如ext4),文件名称大小写敏感
系统目录名称及用途node

[root@centos7 /]# tree -d -L 1 /
/
├── bin -> usr/bin //全部用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
├── boot //引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
├── data //此文件夹为用户自建
├── dev //设备文件及特殊文件存储位置
├── etc //配置文件目录
├── home //普通用户家目录
├── lib -> usr/lib //启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
├── lib64 -> usr/lib64 //专用于x86_64系统上的辅助共享库文件存放位置
├── media //便携式移动设备挂载点
├── mnt //临时文件系统挂载点
├── opt //第三方应用程序的安装位置
├── proc //用于输出内核与进程信息相关的虚拟文件系统
├── root //管理员的家目录
├── run //是各类各样数据的家园,为了在 Linux 文件系统中更好地组织运行时数据。
├── sbin -> usr/sbin //管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
├── srv //系统上运行的服务用到的数据
├── sys //用于输出当前系统上硬件设备相关信息虚拟文件系统
├── tmp //临时文件存储位置
├── usr //universal shared, read-only data
└── var //包括系统运行时要改变的数据shell

二、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?

查看文件元数据vim

[root@centos7 data]# stat test.txt
File: ‘test.txt’ --文件名
Size: 0 --大小 Blocks: 0 --占用的磁盘块数 IO Block: 4096 --磁盘块大小 regular empty file --文件类型
Device: fd02h/64770d --所在设备 Inode: 67 --inode号 Links: 1 --被硬连接次数
Access: (0644/-rw-r--r--) --访问权限 Uid: ( 0/ root) --属主 Gid: ( 0/ root)--属组
Context: unconfined_u:object_r:etc_runtime_t:s0
Access: 2020-02-13 19:46:00.164949782 +0800 --文件最近一次的访问时间
Modify: 2020-02-13 19:46:00.164949782 +0800 --文件的修改时间
Change: 2020-02-13 19:46:00.164949782 +0800 --文件的改变时间
Birth: -windows

修改文件时间戳centos

touch [OPTION]... FILE...
OPTION:
-a 仅改变 atime和ctime
-m 仅改变 mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss]指定atime和mtime的时间戳ide

三、总结软链接和硬链接区别,并用实例操做说明。

硬连接 软连接
本质 同一个文件多个名字 不一样文件,软连接只是指向相应的文件,相似于windows中的快捷方式
可否跨磁盘分区 不能
可否连接目录 不能
相互关系 平等 ,相对独立 有主次之分
文件类型 与源文件相同 连接文件
连接数 被连接后增长连接数 被连接后不增长连接数

四、Linux上的文件管理类命令都有哪些,其经常使用的使用方法及其相关示例演示。

pwd 显示当前shell CWD的绝对路径

语法:centos7

pwd(选项)排序

选项:递归

-P 显示真实物理路径
-L 显示连接路径(默认)进程

实例:

[root@localhost ~]# pwd
/root

cd 改变目录

语法:

cd (选项) (参数)

选项:

-p 若是要切换到的目标目录是一个符号链接,直接切换到符号链接指向的目标目录
-L 若是要切换的目标目录是一个符号的链接,直接切换到字符链接名表明的目录,而非符号链接所指向的目标目录。

  • 当仅实用"-"一个选项时,当前工做目录将被切换到环境变量"OLDPWD"所表示的目录。

实例:

cd 进入用户主目录;
cd ~ 进入用户主目录;
cd - 返回进入此目录以前所在的目录;
cd .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思);
cd ../.. 返回上两级目录;
cd !$ 把上个命令的参数做为cd参数使用。

ls 列出当前目录的内容或指定目录

语法:

ls(选项)(参数)

实例:

ls -a 包含隐藏文件
ls -l 显示额外的信息
ls -R 目录递归
ls -ld 目录和符号连接信息
ls -1 文件分行显示
ls –S 按从大到小排序
ls –t 按mtime排序
ls –u 配合-t选项,显示并按atime重新到旧排序
ls –U 按目录存放顺序显示
ls –X 按文件后缀排序

stat 用于显示文件的状态信息。

语法:

stat(选项)(参数)

选项:

-L:支持符号链接;
-f:显示文件系统状态而非文件状态;
-t:以简洁方式输出信息;
--help:显示指令的帮助信息;
--version:显示指令的版本信息。

实例:

[root@localhost ~]# stat myfile
file: “myfile”
Size: 0 Blocks: 8 IO Block: 4096 通常空文件
Device: fd00h/64768d Inode: 194805815 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2010-12-12 12:22:35.000000000 +0800
Modify: 2010-10-09 20:44:21.000000000 +0800
Change: 2010-10-09 20:44:21.000000000 +0800

[root@localhost ~]# stat -f myfile
File: "myfile"
id: 0 Namelen: 255 type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 241555461 free: 232910771 Available: 220442547
Inodes: Total: 249364480 Free: 249139691

[root@localhost ~]# stat -t myfile
myfile 0 8 81a4 0 0 fd00 194805815 1 0 0 1292127755 1286628261 1286628261 4096

touch 建立空文件和刷新时间

语法:

touch [OPTION]... FILE...

选项:

-a 仅改变 atime和ctime
-m 仅改变 mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss] 指定atime和mtime的时间戳
-c 若是文件不存在,则不予建立

cp 复制文件和目录

语法:

cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
cp SRC DEST

选项:

-a:此参数的效果和同时指定"-dpR"参数相同;
-d:当复制符号链接时,把目标文件或目录也创建为符号链接,并指向与源文件或目录链接的原始文件或目录;
-f:强行复制文件或目录,不论目标文件或目录是否已存在;
-i:覆盖既有文件以前先询问用户;
-l:对源文件创建硬链接,而非复制文件;
-p:保留源文件或目录的属性;
-R/r:递归处理,将指定目录下的全部文件与子目录一并处理;
-s:对源文件创建符号链接,而非复制文件;
-u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;
-S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
-b:覆盖已存在的文件目标前将目标文件备份;
-v:详细显示命令执行的操做。

实例:

cp aaa/* /bbb
复制目录aaa下全部到/bbb目录下,这时若是/bbb目录下有和aaa同名的文件,须要按Y来确认而且会略过aaa目录下的子目录。

cp -r aaa/* /bbb
此次依然须要按Y来确认操做,可是没有忽略子目录。

cp -r -a aaa/* /bbb
依然须要按Y来确认操做,而且把aaa目录以及子目录和文件属性也传递到了/bbb。

\cp -r -a aaa/* /bbb
成功,没有提示按Y、传递了目录属性、没有略过目录。

mv 移动和重命名文件

语法:

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...

选项:

-i 交互式
-f 强制
-b 目标存在,覆盖前先备份

实例:

将文件ex3更名为new1
mv ex3 new1
将目录/usr/men中的全部文件移到当前目录(用.表示)中:
mv /usr/men/* .

rm 删除

语法:

rm [OPTION]... FILE...

选项:

-i 交互式
-f 强制删除
-r 递归
--no-preserve-root 删除/

实例:

交互式删除当前目录下的文件test和example
rm -i test example
Remove test ?n(不删除文件test)
Remove example ?y(删除文件example)
删除当前目录下除隐含文件外的全部文件和子目录
rm -r *

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

cp /etc/profile /tmp //复制/etc/profile至/tmp/目录
vim /tmp/profile //用vim打开profile文件
:%s/^\s*//g //扩展命令模式下输入

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

vim ~/.vimrc //vim打开用户家目录下.vimrc,如需改全局变量的话修改/etc/vimrc文件set tabstop=4 //加入以下字段

相关文章
相关标签/搜索