Linux系统目录和常用文件管理命令

Linux系统命名规则

1,文件名最长255字节

2,包括路径在内文件名称最长4095字节

3,蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件

4,除了斜杠和null,所有字符都有效,但使用特殊字符的目录名和文件不推荐使用,有些字符需要引号来引用他们

5,标准Linux文件系统,文件名大小写敏感

Linux系统目录用途

/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(BootLoader,gtrub,grub2)都存在此目录

/bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序

/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序

/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)

/lib64:专用于X86_64系统上的辅助共享库文件存放位置

/etc:配置文件目录

/home:普通用户家目录

/root:管理员家目录

/media:便携式移动设备挂载点

/mnt:临时文件挂载点

/dev:设备文件及特殊文件存储位置

/opt:第三方应用程序的安装位置

/srv:系统上运行的服务用到的数据

/tmp:临时文件存储位置

/usr: universal shared, read-only data

bin: 保证系统拥有完整功能而提供的应用程序

sbin:

lib:32位使用

lib64:只存在64位系统

include: C程序的头文件(header files)

share:结构化独立的数据,例如doc, man等

local:第三方应用程序的安装位置

bin, sbin, lib, lib64, etc, share

/var: variable data files

cache: 应用程序缓存数据目录

lib: 应用程序状态信息数据

local:专用于为/usr/local下的应用程序存储可变数据

lock: 锁文件 log: 日志目录及文件

opt: 专用于为/opt下的应用程序存储可变数据

run: 运行中的进程相关数据,通常用于存储进程pid文件

spool: 应用程序数据池

tmp: 保存系统两次重启之间产生的临时数据

/proc: 用于输出内核与进程信息相关的虚拟文件系统

/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统

/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

文件元数据信息查看及字段含义

stat命令查看

File: 文件名

Size:文件大小 Blocks: 存储占用磁盘块数

Device: 设备信息 Inode:inode编号 Links: 链接数

Access:权限 Uid:属主 Gid:属组

Access: atime,最近访问时间

Modify: mtime,修改文件内容时间

Change: ctime,修改文件元数据

使用touch命令修改时间戳信息

touch [OPTION]... FILE...

-a 仅改变 atime和ctime

-m 仅改变 mtime和ctime

-t [[CC]YY]MMDDhhmm[.ss]

指定atime和mtime的时间戳

软链接和硬链接区别

1,本质:硬链接:同一个多个名字,软链接不同文件

2,硬链接不可跨分区,软连接可以

3,目录无法创建硬链接,软链接可以

4,相互关系:软链接依赖原始文件,硬链接不依赖

5,创建硬链接,inode号不变,软链接变

6,创建硬链接,链接数会加1,软链接不会

7,软链接的相对路径:原始文件相对链接文件的路径,硬链接的相对路径都是相对当前路径

8,文件类型,硬链接的文件类型与原始文件一致,软链接文件类型为l

9,命令不同ln -s 创建软链接,ln创建硬链接

[root@mage01 ~]#ln -s ../f1 tst/f1.slk

[root@mage01 ~]#ln f1 tst/f1.hlk

[root@mage01 ~]#ll -i f1 tst/f*

203900854 -rw-r--r-- 2 root root 4 Feb 24 20:58 f1

203900854 -rw-r--r-- 2 root root 4 Feb 24 20:58 tst/f1.hlk

67404995 lrwxrwxrwx 1 root root 5 Feb 24 21:01 tst/f1.slk -> ../f1

[root@mage01 ~]#

常见文件管理命令

pwd 显示当前工作目录

basename 文件基名

dirname 目录名

cd 切换工作目录

使用绝对或相对路径:

cd /home/wang/

cd home/wang

切换至父目录: cd ..

切换至当前用户主目录: cd

切换至以前的工作目录: cd -

ls 列出目录内容

s -a 包含隐藏文件

ls -l 显示额外的信息

ls -R 目录递归

ls -ld 目录和符号链接信息

ls -1 文件分行显示

ls –S 按从大到小排序

ls –t 按mtime排序

ls –u 配合-t选项,显示并按atime从新到旧排序

ls –U 按目录存放顺序显示

ls –X 按文件后缀排序

cp 复制

常用选项

-i 覆盖前提示

-n 不覆盖,注意两者顺序

-r, -R 递归复制目录及内部的所有内容

-a 归档,相当于-dR --preserv=all

-d --no-dereference --preserv=links 不复制原文件,只复制链接名

-p 等同--preserv=mode,ownership,timestamp

--preserv[=ATTR_LIST]

mode: 权限

ownership: 属主属组

timestamp:

links

xattr

context

all

-f --force

-u --update 只复制源比目标更新文件或目标不存在的文件

-b 目标存在,覆盖前先备份,形式为 filename~

--backup=numbered 目标存在,覆盖前先备份加数字后缀

例如 cp -rv /etc/ /data/backupdate +%F #将/etc/目录下所有文件,备份到/data独立的子目录下,并要求子目录 格式为 backupYYYY-mm-dd,备份过程可见

cp -a /root/ /data/rootdir 并复制/root下所有文件到该目录内,要求保留原有 权限

mv 移动或重命名文件

-i 交互式

-f 强制

-b 目标存在,覆盖前先备份

rm 删除

-i 交互式

-f 强制删除

-r 递归

--no-preserve-root 删除/

rm -rf /* 删除所有文件

[root@xxx ~]#sed -ir 's/^[[:space:]]+([^[:space:]].+)$/\1/g' /tmp/profile 删除行首空白字符

[root@xxx ~]#echo "set ts =4" >> ~/.vimrc vim中设置table为4个字符

你可能感兴趣的:(Linux系统目录和常用文件管理命令)