Linux文件系统
Linux文件系统:
. | 表示当前目录 |
.. | 表示当前上一级目录 |
以 . 开头的文件是隐藏文件
/ | 根目录 |
/etc | 配置文件存放位置 |
/boot | 系统启动相关文件,如内核,initrd,grub[bootloader] |
/dev | 设备文件[块设备(随机访问),字符设备(线性访问,顺序访问)] |
/home | 用户的家目录 |
/root | root的家目录 |
/lib、 /lib64 | 库文件的存放位置,内核模块文件存放位置/lib/modules/ |
/media | 挂载点目录(移动设备) |
/mnt | 挂载额外的临时额外系统 |
/opt | 早期用于安装第三方程序 |
/proc | 伪文件系统,由内核参数映射而来;内核有很多特性可通过内核参数进行配置,内核也有很多信息如统计数据等可通过内核参数进行输出 net.ipv4.ip_forward = /proc/sys/ net/ipv4/ip_forward |
/sys | 伪文件系统,由内核中硬件相关的信息映射而来; |
/tmp | 临时文件存放位置 |
/var | 经常会发生变化的文件的存放位置,例如(cache,lock,log,run[服务程序的PID]) |
/bin、 /sbin | 可执行文件(如命令),系统自身启动和运行时可能会用到的核心二进制程序 |
/misc | 备用目录 |
/usr | universal, shared, read-only的简写 /usr/bin, /usr/sbin : 系统运行过程中,用户为完成某些操作可能用到的程序 /usr/lib, /usr/lib64 : 用户为完成某些操作可能用到的程序所要用的库 /usr/src : sources的简写,程序的源代码的存放的位置 /usr/share:用户的帮助文件 /usr/local: bin, sbin: 现在第三方程序安装位置; lib, lib64:第三方程序所要用的库 |
/selinux | Security Enhanced Linux的简写,仅在RedHat上常见的安全系统 |
/srv | serivces简写,服务类程序用到的中间数据 |
ls: list,显示指定目录下的文件及子目录列表;
ls [OPTION]... [FILE]...
Ls 是ls --color的别名
ll是ls -l --color的别名
常用选项:
-l: 长格式显示文件的详细属性信息;
drwxr-xr-x. 2 root root 4096 Mar 25 03:43 account
左起第一位: 文件类型
文件类型:
-:普通文件
d: directory, 目录文件
l: link, 符号链接文件
b: block, 块设备文件,随机访问设备
c: character, 字符设备文件,线性设备
p: pipe,管道
s: socket, 套接字文件
后面的9位:文件访问权限
r: 读
w: 写
x: 执行
数字:当前文件被硬链接的次数;
属主:当前文件的所有者
属组:当前文件所属的用户组
数字:文件大小,单位为字节
日期时间:当前文件最近一次被修改的时间
-a: 显示所有文件,包括隐藏文件;
-r: 逆序显示;
-R:递归显示;
-d:用于显示目录自身属性
文件内容的类型查看:
file /PATH/TO/FILE
创建:mkdir
make directory
mkdir [OPTION]... DIRECTORY...
-v: verbose 显示创建过程
-p: parent,递归创建目录
注意:Linux不通过文件名后缀判断文件关联的应用程序;
删除:rmdir
remove directory
仅能删除空目录
-v: verbose
-p: parent,删除指定的目录后,其所在的目录如果为空,则删除之;依次类推;
查看目录树:tree
例:
mkdir -p /test3/{boot/grub,bin,sbin,etc/{rc.d/init.d,syscomfig/network-scripts},lib/modules,lib64,usr/local/{bin,sbin},proc,sys,dev,var/{log,run,lock},tmp} | {}表示命令行展开,/a/{b,c}=/a/b和/a/c |
tree /test3
test3
├── bin
├── boot
│ └── grub
├── dev
├── etc
│ ├── rc.d
│ │ └── init.d
│ └── syscomfig
│ └── network-scripts
├── lib
│ └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│ └── local
│ ├── bin
│ └── sbin
└── var
├── lock
├── log
└── run
文件管理之文本文件查看命令:
cat:
cat [OPTION]... [FILE]…
不加选项与参数就将直接输入显示到输出上
-n:显示行号
-E:显示行结束符,非打印字符[linux是以$为文本文件的结束符]
[windows是以$回车为结束符]
tac:
逐文件逆序显示,与cat相反
翻屏:
Shift+PageUp/PageDown[在虚拟机终端中可使用]
分屏文本显示:more, less
more:分屏查看
more FILE
-d: 显示操作提示
less: 与man相同
首尾显示:head, tail
显示文件前n行:
head [OPTION]... [FILE]...
-n #: 显示指定前#行;
head -# [FILE]…
显示文件后n行:
tail [OPTION]... [FILE]...
-n #: 显示指定的后#行
-#:
-f: follow,
常用于监控日志
stat: 查看文件的状态数据信息
[root@localhost ~]# stat /etc/fstab
File: `/etc/fstab‘
Size: 921 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 1179655 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2015-03-26 11:08:52.440287424 +0800
Modify: 2015-03-26 10:45:34.039999979 +0800
Change: 2015-03-26 11:08:08.156999044 +0800
时间戳:
Access: 最近一次被访问的时间;
Modify: 最近一次被修改的时间,即文件内容被改变;
Change:最近一次被改变的时间,即文件属性发生了改变;[不会被人工修改]
touch:修改文件的时间戳/创建空文件
touch [OPTION]... FILE...
-a: 仅改变访问时间
-m: 仅改变修改时间
-t STAMP: 修改指定时间而非当前时间,[[CC]YY]MMDDhhmm[.ss]
-at -mt:
-c: 不创建不存在的文件[用来改时间戳是不创建文件]
文件管理类命令:cp, mv, rm
cp: copy简写
cp 源文件 目标文件
如果目标文件不存在:则新建之,并将源文件的内容填充至新建文件中;
如果目标文件存在:
如果目标文件是个文件:则覆盖之;
如果目标文件是个目录:则保持原文件名复制到目标目录中;
cp 源文件... 目标文件
源文件是多个文件:目标只能有一个,且必须是目录,还得事先存在;
用root登陆时cp是cp -i的别名 用\cp转义为cp而不是别名
如果源文件是目录:
-R, -r, --recursive:递归复制
其它常用选项
-P, --no-dereference: 不跟踪符号链接指向的原文件
--preserve={mode|ownership|timestamps|links|xattr|context|all}:保留原文件的指定的属性信息;
-a, --archive: 归档,常用于备份时保留原文件的所有属性;相当于-dR --preserve=all,[只有root有权限保存属主属组]
-i, --interactive:覆盖目标文件之前提醒用户;
-f, --force:强制覆盖;
-l, --link: 为文件创建硬链接而不是复制文件;
-v: verbose
mv命令:move
mv 源文件 目标文件
mv 源文件... 目标文件
-i: 交互式;
-f: 强制覆盖;
-v: 显示过程;
重命名:mv a.txt abc.txt 把a.txt改为abc.txt
mv /tmp/fstab /tmp/hello
rm命令:remove
-r: 递归删除
-f:强制删除
rm -rf /
文本管理类命令:
nano: 全屏幕文本编辑器
wc: word count文本统计
[root@localhost tmp]# wc abc.txt 3 5 24 abc.txt
103有几行 | 201多少单词 | 1136多少字节 |
wc [OPTION]... [FILE]…
-l, --lines: 仅统计行数
-w, --words: 仅统计单词数
-c, --bytes:仅统计字节数
cut:
cut OPTION... [FILE]...
-d: 指明分隔符
-d‘ ‘: 表示以空格为分隔符;
-f#: 指明要保留的字段;
单个:#
离散的多个:#,#,#
连续的多个:#-#
sort: 排序
sort可以直接指定文件
sort [OPTION]... [FILE]...
-r: 逆序;
-f: 忽略字符的大小写;
-t: 指定字段分隔符
-k: 指明分隔以后的字段
-n: 按数值大小排序
sort -t: -f3 -n /etc/passwd
-u: 排序后去重
uniq:相邻重复行才为重复行
-i: 忽略大小写;
-d: 仅显示重复了的行;
-u: 仅显示不曾重复的行;
-c: 去重后显示每行出现了的次数;
本文出自 “xxlixin” 博客,请务必保留此出处http://xxlixin1993.blog.51cto.com/9498220/1625948
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。