linux的哲学思想:
一切皆文件:把几乎有多的资源都具象为文件
由诸多功能单一的程序组成,当完成复杂任务时组合单一的小程序:
每一个命令都避开和用户交互:便于以编程的方法完成手动化任务
使用纯文本文件保存程序的配置文件:
linux的文件系统和windows不同,linux的文件系统为单根文件系统所有文件都在其中!
文件系统结构
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录
/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录
/home/USERNAME:普通用户家目录
/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:第三方应用程序的安装位置
/var: variable data files
/proc: 用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
在linux中,因为使用了ext系列文件系统,致使linux系统对文件名的大小写敏感,以"."开头的文件为隐藏文件ls命令可以查看当前目录下的文件当使用
文件:文件分为元数据和数据两部份组成
元数据:指文件的属性信息.例如访问时间.更改时间.文件大小.属主链表等信息.并不包含文件内容,只是文件的标签
数据:储存数据内容
注意:元数据和数据并不在一起储存,当c盘低格时.有专门的空间储存文件的元数据(inode)和数据,待续.
文件命名规则:略...#PS:nozuonodie
linux文件类型:
-:普通文件
d:目录文件
b:块设备
c:字符设备
l:符号链接文件
p:管线文件pipe
s:套接字文件socke
文件的三个时间:(查看命令为"stat")
accesstime:访问时间,atime,读取文件内容
modifytime:更改时间,mtime,改变文件内容(数据)
changetime:改变时间,ctimelinux 管道文件,元数据发生改变changetime:改变时间,ctimelinux 管道文件,元数据发生改变
好文推荐:
字节终面:CPU是怎样读写显存的?
全网最牛Linux内核剖析--IntelCPU体系结构
一文让你看懂Linux五大模块内核源码,内核整体构架设计(超详尽)
嵌入式前景真的好吗?那有点悬!
一文教你怎么使用GDB+Qemu调试Linux内核
Linux内核必看五本书籍(强烈推荐)
全网独一无二Linux内核Makefle系统文件解读(一)(纯文字代码)
带你深度了解Linux内核构架和工作原理!
怎么看懂GDB底层实现原理(从这几点入手~)
一文彻底理解Memorybarrier(显存屏障)
一篇文带你看懂,虚拟显存、内存分页、分段、段页式显存管理(超详尽)
[root@pxe22 ~]# stat sum.sh
File: "sum.sh"
Size: 110 Blocks: 8 IO Block: 4096 普通文件
Device: 803h/2051dInode: 9837 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-06-12 20:59:31.106005988 +0800
Modify: 2016-06-12 20:59:28.552004840 +0800
Change: 2016-06-12 20:59:28.562004984 +0800
cp命令:
拿来将一个或多个源文件或则目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个早已存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个早已存在的目录,否则将出现错误。
-f:强行复制文件或目录linux命令详解词典,不论目标文件或目录是否已存在;
-i:覆盖既有文件之前先寻问用户;
-l:对源文件构建硬联接,而非复制文件;
-p:保留源文件或目录的属性;
-R/r:递归处理中标麒麟linux,将指定目录下的所有文件与子目录一并处理;
-s:对源文件构建符号联接,而非复制文件;
-u:使用这项参数后只会在源文件的修改时间较目标文件更新时或是名称互相对应的目标文件并不存在时,才复制文件;
-S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
-b:覆盖已存在的文件目标前将目标文件备份;
例
命令别称:
在linux中系统容许用户定义命令的别称,可以把一条命令定义成其他名称执行.
[root@pxe22 ~]# alias #查看当前用户所有定义的别名
alias cp='cp -i' #定义cp命令 默认加 –i选项
[root@pxe22 ~]# alias rm=’rm -i’
注意:在命令行中定义的别称只对当前shell有效,退出当前登入定义就失效了,假如要定义每次都有效必须写入文件中,编辑的文件不会立刻成效,必须让shell进程重新读取配置文件:
仅对当前有效的文件:~/.bashrc
对所有用户都有效的文件:/etc/bashrc
重新读取配置文件:
Source|.~/.bashrc|/etc/bashrc
撤消别称命令unalias原理同上,当前shell进程撤消用.或则删掉配置文件中的代码
假如别称同原命令同名,假如要执行原命令,可以使用:
“CMD”或‘CMD’外部命令则指定绝对路径
联通和重命名文件:mv
常用参数:-i交互式-f强制(交互式:删掉之前先寻问用户是否确认更改.强制则不寻问)常用参数:-i交互式-f强制(交互式:删掉之前先寻问用户是否确认更改.强制则不寻问)
[root@pxe22~]# ls 1
1
[root@pxe22~]# mv 1 2 #将文件1重命名为文件2
[root@pxe22~]# ls
2
删掉命令:rm!!!生产环境中请勿必确认操作!!!或使用mv命令联通到其他目录
常用参数:
-i:交互式
-f:强制删掉
-r:递归删掉倘若指定的是一个目录则删掉目录下所有子目录和文件
目录操作
创建目录:mkdir
-p:存在于不报错,且可手动穿件所需的各目录
-v:显示详尽信息
-m:MODE:创建目录时直接指定权限
删掉空目录;rmdir(rm-r也可删掉目录)
-p:递归删掉父空目录
-v:显示详尽过程-v:显示详尽过程
--内核技术英文网-建立全省最权威的内核技术交流分享峰会()
原文地址:讲解linux文件管理(结构)-圈点-内核技术英文网-建立全省最权威的内核技术交流分享峰会()