Linux 第四天: (07月28日) Linux文件管理

Linux 第四天: (07月28日) Linux文件管理

 

 

 

 

rootfs 根目录文件系统 root filesystem
LSB  Linux Standard Base
FHS 文件系统分层结构 Filesystem Hierarchy Standard

 

 

蓝色表示 目录
绿色表示 可执行文件
红色表示 压缩文件
浅蓝表示 链接文件
灰色表示 其它文件
/和NUL外, 所以字符都有效

 

 

/boot 引导文件,内核文件(vmlinuz),引导加载器(bootloader,grub)
/bin 基本命令
/sbin 管理类的基本命令
/lib 基本共享库,内核模块文件(/lib/modules)
/lib64 64位系统的共享库
/etc 配置文件
/home/USERNAME 普通用户家
/root 管理员家
/media 移动设备挂载
/mnt 临时文件系统挂载
/dev 设备和特殊文件存储
b block device 随机访问
c character device 线性访问
/opt 第三方应用程序安装
/srv 系统运行所用数据
/tmp 临时文件

 

 

/usr
bin 提供系统完整功能的应用程序
sbin 空
lib 32位
lib 64位
include C程序的头文件
share 结构化独立的数据
local 第三方应用程序安装
bin, sbin, lib, lib64, etc, share

 

 

/var
cache 应用程序缓存数据目录
lib 应用程序状态信息数据
local 为/usr/local程序存储数据
lock 锁文件
log 日志文件
opt 为/opt下程序存储数据
run 运行进程数据, 存储pid文件
spool 应用程序数据池
tmp 保存系统两次重启之间临时数据

 

 

/proc 输出内核和进程的虚拟文件系统
/sys 输出硬件设备的虚拟文件系统
/selinux security enhanced linux 安全策略信息

 

 

二进制程序
/bin
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin

 

 

库文件
/lib
/lib64
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/lib64

 

 

配置文件
/etc
/etc/DIRECTORY
/usr/local/etc

 

 

帮助文件
/usr/share/man
/usr/share/doc
/usr/local/share/man
/usr/local/share/doc

 

 

– 普通文件
d 目录文件
b 块设备
c 字符设备
l 符号链接文件
p 管道pipe
s 套接字文件socket

 

 

centos7 目录变化
/bin
/usr/bin
/sbin
/usr/sbin
/lib
/usr/lib
/lib64
/usr/lib6

 

 

pwd printing working directory 当前shell CWD绝对路径
cd.. 到上一级目录
cd   到自己主目录
cd-  到以前的目录

 

 

ls 列出目录内容
ls -a 包含隐藏文件
ls -l 显示额外信息
ls -R 递归通过
ls -ld 目录和符号链接信息
ls -1 文件分行显示
ls -S 从大到小排序
ls -u 配合-t显示atime排序
ls -U 不排序按存放顺序显示

 

 

* 匹配零个或多个字符
? 匹配任何单个字符
~ 当前用户家目录
~username 用户家目录
~+ 当前工作目录
~- 前一个工作目录
[0-9] 一个数字
[a-z] 大写和小写字母
[A-Z] 大写字母
[wxc] 匹配列表中任一字符
[^wxc] 匹配列表所有之外字符
man 7 glob
[:digit:] 任意数字0-9
[:lower:] 任意小写字母
[:upper:] 任意大写字母
[:alpha:] 任意大小写字母
[:alnum:] 任意数字或字母
[:space:] 空格
[:punct:] 标点符号

 

 

stat 文件状态
atime, access time 访问时间 读取文件内容
mtime, modity time 修改时间 改变文件内容
ctime, change time 改变世界 改变元数据
touch -a 仅改变atime
touch -m 仅改变mtime
touch -c 如果文件不存在则不创建
touch -t STAMP [[CC]YY]MMDDhhmm[ss]

 

 

cp -i 交互式
cp -r, -R 递归复制
cp -a 归档 等于 -dR –preserv=all
cp -d –no-derefernce –preserv=links 不复制源文件只复制链接
–preserv[=ATTR-LIST]
mode 权限
ownership 属主属组
timestamp
links
xattr
context
all
-p 等同–preserv=mode,ownership,timestamp
-v –verbose
-f –force

 

 

alias 显示所有别名
alias NAME='VALUE' 定义别名, 当前shell有效
~/.bashrc 当前用户永久有效
/etc/bashrc 所有用户永久有效
source /path/to/config_file
./path/to/config_file
bash进程重新读取配置文件
unalias 撤销别名

 

 

"\COMMAND" 执行原命令
'COMMAND' 执行原命令
/PATH/COMMAND 执行原命令

 

 

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

 

 

tree -d 只显示目录
tree -L level 指定显示层级数
tree -P pattern 只显示指定匹配路径

 

 

mkdir -p 存在于不报错可自动建各目录
mkdir -v 显示详细信息
mkdir -m MODE 直接指定权限
rmdir -p 递归删空目录
rmdir -v 显示详细信息
rm -r 递归删除目录树

 

 

inode表中包含文件系统所有文件列表
一个节点包含元数据
文件类型,权限,UID,GID
连接数(指向这个文件名路径名称个数)
该文件的大小和不同时间戳
指向磁盘上文件的数据块指针
其它数据

 

 

mv源文件和目标文件在同一分区,
建立新文件名对应新目录项
删除旧文件名对应旧目录项
不影响inode表(除时间戳)或磁盘位置,数据不移动
mv源文件和目标文件不在同一分区
mv 相当于cp和rm

 

 

ln filename [linkname]硬链接
不能跨分区
连接数递增
删文件时rm递减链接数直到0

 

 

ln -s filename [linkname]软连接
ls -l 显示软链接
可以对目录, 可以跨分区,
大小是指向路径字符串长度, 不改变inode数

 

 

file -b 不显示文件名
file -c 显示详细过程
file -f 列出文件类型
file -F 指定分隔符替换":"
file -i 输出mime字符串
file -L 查看软连接文件类型
file -z 解读压缩文件
file –help 显示在线帮助

 

 

STDIN -0 标准输入
STDOUT -1 标准输出
STDERR -2 标准错误输出

 

 

> 把STDOUT重定向到文件
2> 把STDERR重定向到文件
&> 把所有输出重定向到文件

 

 

> 覆盖文件
set -C 禁止覆盖但可追加强制覆盖 >|
set +C 允许覆盖
>> 追加

 

 

2> 覆盖重定向错误输出
2>> 追加重定向错误输出
COMMAND > /file.out  2>error.out 对和错分别输出到不同处
&> 对和错合并覆盖
&>> 对和错合并追加

COMMAND &> FILE
COMMAND > FILE 2> &1 顺序很重要
COMMAND >> FILE 2> &1
find /etc -name passwd 2> /dev/null
() 合并多个程序的输出
(cal 2016; cal 2017) > all.txt

 

tr -c 或 –complerment 取字符补集
tr -d 或 –delete 删除字符
tr -s 或 –squeeze-repeats 将连续重复字符以单一表示
tr -t 或 –truncate-set1 将第一字符集转化第二字符集
tr'a-z''A-Z' < /file 小写转大写
tr -d abc < /file 删abc任一
cat > file 按ctrl +d 离开, 用文件代替键盘输入
cat > file << END
<<终止词
mail -s "subject" user << END
>xxx
>END

 

 

COMM1 | COMM2 | COMM3 管道命令
STDERR默认不能用管道转发, 可用2>&1 或 |&
最后一个命令在当前shell的子shell中执行
组合多种工具
ls | tr'a-z''A-Z'
COMMAND | less 逐页显示
echo "test" | mail \ -s "test" user@example.com

 

 

COMMAND | tee FILE | COMMAND2 重定向到多目标

 

 

 

原创文章,作者:dengjian,如若转载,请注明出处:http://www.178linux.com/28082

(0)
dengjiandengjian
上一篇 2016-08-08 09:22
下一篇 2016-08-08 09:22

相关推荐

  • 马哥教育网络班21期-第四周课程练习

    Do one thing at a time,and do well. 小僧近期忙的去尿尿的时间都要挤出来…..! 无人能理解 zZzz 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 编辑/etc/group文件,添加组hadoop。 手动编辑/etc/pass…

    Linux干货 2016-07-29
  • N25-第17周博客作业

    1、结合图形描述LVS的工作原理;     LVS (Linux Virtual Server)是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结…

    Linux干货 2017-05-21
  • linux rpm包管理

    一、概要     RPM:RPM Package Manager(rpm软件包管理器)的缩写。它能将编译好的程序打包一个文件或有限的几个文件,可用于实现安装、卸载、升级、查询等功能。 二、rpm软件包管理 rpm包的命名格式:name-version-relase.arch.rpm 例如:bash-1.1.0-5.el…

    Linux干货 2015-04-27
  • CentOS 6开机启动流程实验篇

    CentOS 6开机启动流程实验篇 centos 系统的启动流程 grub 破坏Linux的核心文件再修复体验系统启动流程 CentOS 6开机启动的具体详情请参见理论篇! 了解了系统启动的基本流程,以下我们通过“破坏式实验”,即破坏系统启动过程中的一些关键环节,使系统无法启动,然后我们再通过修复这些文件使得系统正常重启,进而体验Linux系统的启动流程,这…

    Linux干货 2016-09-19
  • N28-第二周

    文件管理命令: cp命令:copy    源文件;目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST多源复制:cp [OPTION]… SOURCE… DIRECTORYcp [OPTION]… -t DIRECTORY SOURCE… 单源复制:cp [OPTION]…

    Linux干货 2017-12-17
  • Linux文件的权限与解析

    一,文件的基本权限: 通常,你使用ls -l 命令,就会看到这样的行:   让我们解析一下这些字段代表的意思: -rw-r–r–. 1 root root 1018 Nov 6 2016 usb_modeswitch.conf 文件类型权限  硬链接数 文件所有者 文件所属组 文件容量  文件最后被修改时…

    2017-07-30