首页 > 代码库 > 02_02 Linux根文件系统详解

02_02 Linux根文件系统详解

file命令及其用法

Windows:pe

Linux:ELF

文件系统:

rootfs:根文件系统

FHS:Linux

ls / 查看根目录

/boot: 系统启动相关的文件,如内核,initrd 以及grub(bootloader)

/dev: 设备文件

        块设备:随机访问的设备 数据块  硬盘

        字符设备:线性访问 按字符访问 键盘 鼠标 显示器

        设备号:主设备号(major)和次设备号(minor)

/etc: 配置文件

/home: 用户的家目录,默认为home下一个与用户名同名的目录 /home/USERNANE

/root:管理员的家目录

/lib:库文件和内核模块文件

    /lib/modules:内核模块文件 没有程序的执行入口 只能访问 不能执行

    静态库  .a

    动态库 .dll, so(shared object)

 /media: 挂载点目录,移动设备

/mnt: 额外的临时文件系统  

其实上面2者都通用的 只是规定

/opt:可选目录 第三方程序的安装目录 早期用来安装第三方软件

/proc:伪文件系统 没有文件 内核映射文件 断电为空

/sys:伪文件系统,跟硬件设备相关的属性映射文件 比如磁盘I/O队列  断电为空

/tmp:临时文件 一个月定期清除 每个人自己创建 但是 只能删除自己的 

/var/temp

/var:可变化的文件: 日志 邮件 缓存 run进程id号

/bin:可执行文件 用户命令

/sbin:管理命令

/usr:shared,read-only 全局的共享的只读文件

    /usr/bin

    /usr/sbin

    /usr/lib

系统启动后运行的功能所需要的库等

/usr/local:

    /usr/local/bin

    /usr/local/bin

    /usr/local/lib

命名规则:

1.长度不能超过255字符

2.不能使用/当文件名

3.严格区分大小写


相对路径 

绝对路径


文件管理

目录管理

ls

cd

pwd

mkdir: 创建空目录

/root/x/y/z

mkdir x

mkdir x/y

mkdir x/y/z

tree:查看目录树

/root/x/y/z

mkdir:

    -p   如果没有父目录 会创建

    -v 显示结果

mkdir -p /root/x/y/z 如果没有父目录 会创建

mkdir -pv /root/x/y/z 显示创建过程

mkdir -pv /root/x/{y/m,z} 花括号展开

或者

mkdir -pv /root/x/y/m /root/x/z

创建 /mnt/test2/下的 a_b,a_c,d_b,d_c

{a,d}_{b,c}

mkdir -pv /mnt/test2/{a,d}_{b,c}

删除目录:

rmdir /mnt/test 删除空目录

rmdir:

    -p 删除非空目录


文件创建和删除

touch a 创建一个a的空文件

file a 查看文件

touch 主要用来修改时间戳

    -c 不创建 查看时间戳 如果不存在 也不 创建

    -a 修改访问时间    

    -m -t 201212121212 file 修改到某一个时间戳

stat a 查看a文件的时间戳状态 

spacer.gif



stat


创建文件,可以使用文件编辑器

ASCII:

    128不同的字符:

        二进制:

                2^6 =0,63

                2^7=0,127

  GB19030 GBK GB2312 unicode

nano 简单文本编辑器

nano text

Ctrl+O 保存退出

删除文件:rm hello

\ls 去除颜色

rm

     -i 删除前确认

    -f 强行删除

    -r 递归删除目录里的文件和目录

    -rf 强行删除  递归删除目录里的文件和目录

rm -rf /mnt/test2




复制和移动文件

cp: copy

    -R 递归

    -r 递归

    -i 交互 警告

    -f 强行覆盖

    -p 保留属性 属组 属主 ###

    -a  保持连接 递归复制 归档复制 常用备份


cp SRC DEST 源文件 目标文件

cp file1 file2 file3 最后一个是目标  无法实现2个文件到一个文件

cp /etc/passwd /tmp/   目标是目录 并且存在 把文件放进去

cp /etc/passwd /tmp/test 不存在 则复制为test 如果存在 则覆盖

cp file1 file2 dirctory 多个源文件 最后一个必须是目录

cp /etc/init.d/ /tmp 默认复制目录里面的文件 不复制目录本身

cp -r /etc/init.d/  /tem/hello/ 整个复制到hello目录

cp -f 如果目标存在 强行覆盖

cp -i 提示警告信息


cp /etc/{password,inittab} /tmp

 mv move 移动文件

mv SRC DEST

同一个目录下 就是重命名

mv /tmp/hello/ /var/tmp/abc 如果复制目录 目标不是目录 无法移动 如果是目录 保存到目录 

mv -t DEST SRC =http://www.mamicode.com/==mv SRC DEST


复制文件并指定属性 相似与cp

install:

    -d DIRECTORY....    创建目录

    -m 指定权限

    -o 指定属主

    -t DIRECTORY SRC....



本文出自 “甲午笔记” 博客,请务必保留此出处http://jiawu.blog.51cto.com/9349234/1586766

02_02 Linux根文件系统详解