3-2 LInux文件管理
LInux文件管理
文件系统目录结构
Linux中目录结构是有一定的约定的FHS
- /bin:存放二进制程序
- /boot:启动相关
- /dev:设备文件
- /etc:配置文件
- /home:用户家目录
- /lib:库文件
- /lib64:64位库文件
- /madia:关盘等设备
- /mnt:外部设备挂载点
- /opt:存放第三方程序(现在用的少)
- /proc:虚拟目录对应内存中的内容
- /root:root账号家目录
- /run:存放正在运行中的相关文件
- /sbin:管理员执行的二进制程序
- /sys:存放硬件相关
- /tmp:临时文件夹
- /usr:二层根,存放很多内容,比如man手册
- /var:变化的内容,比如日志
在Linux中对文件名称大小写敏感,由于文件系统对大小写敏感导致的,如FATFS的U盘挂载到LInux下大小写时不敏感的,所以Linux系统对文件大小写并不敏感,而是文件是同对大小写敏感
文件系统细节
文件系统和目录被组织成一个单根的导致树结构,文件系统从根目录下开始,用“/”表示,跟文件系统为“rootfs:root filesystem”,文件名称曲风大小写,以"."开头的文件为隐藏文件,路径分隔使用"/"符号,文件有两类数据:元数据和数据
文件名规则
- 文件名最长255个字节
- 包括路径在内的文件名称最长4095个字节
- 有不同的颜色区分不同文件
- 目录:蓝色
- 可执行文件:绿色
- 压缩文件:红色
- 连接文件:浅蓝色
- 其他文件:灰色
颜色是可以惊醒定义和修改的/etc/DIR_COLORS这个文件就是用来定义文件颜色的,更改这个配置文件就会改变颜色
- 除了斜杠"/"和NUL,所有字符都有效,但是用特殊字符的目录名和文件不推荐使用,有些字符需要使用引号引用
- 标准Linux文件系统(如ext4)对文件名称大小写敏感
CentOS7的目录变化
- /bin和/usr/bin
- /sbin和/usr/sbin
- /lib和/usr/lib
- /lib64和/usr/lib64
在CentOS7中这些目录已经是一个目录了
Linux下的文件类型
- -:普通文件
- d:目录文件
- b:块设备
- c:字符设备
- l:符号链接文件
- p:管道文件pipe
- s:套接字文件
特殊文件/dev/zero指的是NUL,可以输出NUL
/dev/null黑洞设备,可以将不要的内容输出值此设备
dd if=/dev/zero of=f1.txt bs=1 count=1 分别指输入,输出,一次读入大小,读入几次
hexdump -C 查看十六进制文件
查看与切换目录
pwd #查看所在文件夹
pwd -P #查看真实路径
cd 或 cd ~ #切换到自己的家目录
cd ~USER #可以切换到USER用户家目录
cd - #切换到上一个所在的目录
$OLDPWD #这个变量存放了上一次所在的目录
时间戳
ctime = Change time为元数据更改时间
mtime = Modify time为内容更改时间
atime = Access time为访问时间(一天之内再次访问不做修改,有个例外,当都时间比些时间要早时有访问会更新,centos6开始)
stat命令可以查看文件元数据
查看目录的文件列表
ls #默认列出文件夹下的文件泪飙(不包含隐藏文件)
ls -a #列出文件夹所有文件
ls -A #列出文件夹除. ..以外的为念列表
ls -l #列出晚间的详细信息,默认显示时间为mtime内容更改时间
ls -d #只列目录本身的属性,不进入目录
ls -R #递归显示子目录里的文件列表
ls -$ #一行显示$个文件
ls -S #按从大到小排序
ls -r #倒序排列信息
ls -t #按找mtime排序
ls -l --time=ctime #查看文件ctime也可以查看atime
ls -X #以文件后缀分类显示
ls -h #以人类易读的方式显示大小
stat FILE #查看文件元数据
绝对路径与相对路径
绝对路径指从根开始,路径指定到目标
相对路径一般相对现在所在的目录,有些特殊情况相对于其它路径
. #当前目录
.. #父目录
../../../../../ #当上级目录数量超过根时,由于根的父目录也是根,所以会一直为根
基名与目录名
/etc/sysconfig/network #以这个文件为例
basename /etc/sysconfig/network #取其基名
#结果为network
dirname /etc/sysconfig/network #取其目录名
#结果为/etc/sysconfig
通配符模式
ls *.txt #显示以txt为后缀的文件(.txt不会被列出来)
ls * #将所有文件列出,目录则进入目录并列出其文件列表
ls -d * #只显示目录本身不深入目录显示文件列表
ls .* * -d 或 ls -a * #显示所有文件
*:匹配零个或多个字符
?:匹配任何单个字符
~:当前用户家目录
~USER:用户USER家目录
~+:当前工作目录
~-:前一个工作目录
[0-9]:匹配数组范围
[a-z]:字母aAbB
[A-Z]:字母AaBb
[STRING]:匹配列表中任何一个字符
[^STRING]:匹配列表中所有字符以为的字符
预定义的字符类:man 7 glob
[:digit:]:任意数字相当于[0-9]
[:lower:]:任意小写字母
[:upper:]:任意大写字母
[:alpha:]:任意大小写字母
[:alnum:]:任意数字或字母
[:blank:]:水平空白字符
[:space:]:水平或垂直空白字符
[:punct:]:标点符号
[:print:]:可打印字符
[:cntrl:]:控制(非打印)字符
[:graph:]:图形字符
[:xdigit:]:十六进制字符
3-2 LInux文件管理的更多相关文章
- Linux文件管理相关命令
Linux文件管理相关命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...
- Linux文件管理上
Linux文件管理 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 对于计算机来说,所谓的数据就是0和1的序列.这样的一个序列 ...
- Linux文件管理和编辑常用命令
Linux文件管理和编辑常用命令 mkdir 命令 功能说明 mkdir 命令用于创建一个目录,mkdir是make directory的缩写 格式: mkdir [选项] 目录名 mkdir 命令的 ...
- 转 Linux文件管理
Linux文件管理 http://www.cnblogs.com/vamei/archive/2012/09/09/2676792.html 作者:Vamei 出处:http://www.cnblog ...
- linux文件管理--压缩打包
目录 linux文件管理--压缩打包 1.压缩打包介绍 2.gzip压缩工具 3.zip压缩工具 注意: 4.tar压缩工具 5.tar生产案例实践 linux文件管理--压缩打包 1.压缩打包介绍 ...
- day58:Linux:BashShell&linux文件管理&linux文件下载上传
目录 1.BashShell 2.Linux文件管理 3.Linux文件下载和上传 BashShell 1.什么是BeshShell? 命令的解释,用来翻译用户输入的指令 2.BashShell能做什 ...
- 3-1 Linux文件管理类命令详解
根据马哥Linux初级 03-01整理 1. 目录管理 ls cd pwd mkdir rmdir tree 2. 文件管理 touch stat file rm cp mv nano 3. 日期时间 ...
- Linux文件管理_1
在Linux中,全部都是文件,所以文件管理在Linux上格外重要,在我们学习文件管理前,我们先学习几个关于文件的命令,之后才能更好的学习文件管理. 目录 pwd命令 cd命令 列出文件内容ls 查看文 ...
- linux文件管理之bash shell
BASH Shell 对文件进行管理 ========================================================创建.复制.删除.移动.查看.编辑.压缩.查找 内 ...
随机推荐
- 网卡绑定(bonding)
就是将多块网卡绑定同一IP地址对外提供服务,可以实现高 可用或者负载均衡.当然,直接给两块网卡设置同一IP地址 是不可能的.通过bonding,虚拟一块网卡对外提供连接, 物理网卡的被修改为相同的MA ...
- java 枚举类(简单使用)
直接上代码 用法一(常量): package com.ou.test; import com.sun.corba.se.impl.util.SUNVMCID; public class Enum { ...
- Fetch(原生)的简单使用
前言: Fetch 提供了对 Request 和 Response 等对象通用的定义. 发送请求或者获取资源,需要使用 fetch() 方法. 具体使用代码: <script> fetch ...
- php类知识点滴---类的实例化,构造函数,继承初步
实例化类----黑科技用法,通过字符串来实例化 class coach { public function __construct() { echo "欢迎光临北武堂"." ...
- es6 模块编译 *** is not function
今天学习vuejs,里面用到了es6的写法,遇到了一个很怪的问题,不知道有人遇到么. 安装的模块引用:import Vue from 'vue';(注意,Vue处没有{},如果加上这个就报错Uncau ...
- OkHttp3-基本用法(转)
OkHttp 一个支持Http和Http/2,可适用于Android以及Java应用的网络请求客户端. 概述 Http是现代网络应用的所常用的协议,它是一种数据传输的媒介.执行高效的Http代码可以让 ...
- 题解 POJ1149 Pigs
先翻译一下吧(题面可以在原OJ上找) Mirko在一个由M个锁着的猪舍组成的养猪场工作,Mirko无法解锁任何猪舍,因为他没有钥匙.客户纷纷来到农场.他们每个人都有一些猪舍的钥匙,并想购买一定数量的猪 ...
- Flash上传超大文件解决方案
文件夹数据库处理逻辑 public class DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject() ...
- bk复面-一场被问蒙蔽了的面试
1.自我介绍 ---自我介绍从个人生活上.兴趣爱好上去介绍,比如我自己,平时喜欢听听音乐.看看鸡汤类的书,比如爱下厨,喜欢根据一些网上的教程去尝试做一份自己满意的晚餐,简历上已经写得工 ...
- CodeForces–830A--二分,贪心
Office Keys time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ...