Linux:Day3 文件系统
Linux的文件系统:
根文件系统(rootfs):root filesystem
/boot:引导文件存放目录:内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录;
/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序;
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序;
/lib:基本共享库文件,以及内核模块文件(/lib/modules);
/lib64:专用于x86_64系统上的辅助共享库文件存放位置;
/etc:配置文件目录(纯文本文件);
/home/USERNAME:普通用户家目录;
/root:管理员的家目录;
/media:便携式移动设备挂载点;cdrom、usb
/mnt:临时文件系统挂载点;
/dev:设备文件及特殊文件存储位置;
b:block device,随机访问
c:character device,线性访问
/opt:第三方应用程序的安装位置; 以前用的比较多,现在用的少了
/srv:系统上运行的服务用到的数据;
/tmp:临时文件存储位置;
/usr:universal shared,read-only data;
bin:保证系统拥有完整功能而提供的应用程序;
sbin:
lib:
lib64:
include:C程序的头文件(header files);
share:结构化独立的数据,例如doc,man等;
local:第三方应用程序的安装位置:
bin, sbin, lib, lib64, etc, share
/var:variable data files
cache:应用程序缓存数据目录;
lib:应用程序状态信息数据;
local:专用于为/usr/local下的应用程序存储可变数据;
lock:锁文件
log:日志目录及文件;
opt:专用于为/opt下的应用程序存储可变数据;
run:运行中的进程相关的数据;通常用于存储进程 的pid文件;
spool:应用程序数据池;
tmp:保存系统两次重启之间产生的临时数据;
/proc:用于输出内核与进程信息相关的虚拟文件系统;
/sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统;
/selinux:seccrity enhanced Linux,selinux相关的安全策略等信息的存储位置;
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/sare/doc, /usr/local/share/man, /usr/local/share/doc
Linux下的文件类型:
- (f):普通文件
d:目录文件;
b:块设备;
c:字符设备;
l:符号链接文件;
p:管道文件;
s:套接字文件;
bash的基础特性:
(1)命令历史
history
环境变量:
HISTSIZE:命令历史记录的条数;
HISTFILE:~/.bash_history;
HISTFILESIZE:命令历史文件记录历史的条数;
history -d OFFSET:删除指定偏移量所在的命令;
-c:删除所有命令历史
#:显示历史中最近的#条命令;
-a:手动追加当前会话缓冲区的命令历史至历史文件中;
调用历史中的命令:
!#:重复执行第#条指令;
!!:重复执行上一条命令;
!string:执行以字符开头的最近一条命令;
调用上一条命令的最后一个参数:
!$
Esc, .
Alt+. 并不是所胡系统都支持,建议使用前两种;
控制命令历史的记录方式:
环境变量:HISTCONTROL
ignoredups:忽略重复的命令;连续且相同方为“重复”;
ignorespace:忽略所有以空白开头的命令;
ignoreboth:前面两种都忽略
修改环境变量值的方式:export 变量名=“值”
变量赋值:把赋值符号后面的数据存储于变量名指向的内容空间;
(2)命令补全
bash执行命令:
内部命令:
外部命令:bash根据PATH环境变量定义的路径,自左至右在每个路径搜寻给定命令名命名的文件,第一次找到即为要执行的命令;
直接补全:Tab,用户给定的字符串只有一条唯一对应的命令;
以用户给定的字符串为开头命令不唯一,则再次Tab会给出列表;
(3)路径补全
把用户给出的字符串当做路径开头,并在其指定上级目录下搜索已指定的字符串形状不的文件名;
如果唯一:则直接补全;
否则:再次Tab,给出列表;
(4)命令行展开
~:展开为用户的主目录
~USERNAME:展开为指定用户的主目录
{}:可承载一个以逗号分隔的列表,并将其展开为多个路径
/tmp{a,b} = /tmp/a, /tmp/b
/tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi
(5) 命令的执行结果状态
成功
失败
bash使用特殊变量$?保存最近一条命令的执行状态结果:
0:成功
1-255:失败
程序执行有两类结果:
程序的返回值;
程序的执行状态结果;
目录管理类命令:
cd,pwd,ls
mkdir,rmdir
mkdir [OPTION]... DIRECTORY...
不加选项时,如果路径中除了最后一个目录之外还有其它的目录也不存在,则报错!
如果想创建的目录已经存在,则报错!
-p:如果路径中除了最后一个目录之外还有其它的目录也不存在,则自动创建其它目录!
如果想创建的目录已经存在,不报错,也不会创建,相当于没执行此命令。
-v:显示详细信息。
-m MODE:创建目录时直接指定权限。
tree:
-d:只显示目录
-L level:指定显示的层级数目
-P pattern:只显示由指定pattern匹配到的路径;
rmdir:删除空目录
rmdir [OPTION]... DIRECTORY...
只能删除空目录,如果有文件则会报错。
-p:删除目标目录后,如果其父目录也为空目录,则也删除,直至非空目录停止。
练习:
(1) 如何创建/tmp/x/y1, /tmp/x/y2, /tmp/x/y1/a, /tmp/x/y1/b, /tmp/x/y2/a, /tmp/x/y2/b
(2) 如何创建x_m, y_m, x_n, y_n
(3) 如何创建/tmp/bin, /tmp/sbin, /tmp/usr, /tmp/usr/bin, /tmp/usr/sbin
文本文件查看类命令:
cat, tac
more, less, tail, head
tail [OPTION]... [FILE]...
-c #:指定获取后#字节
-n #:指定获取后#行,可简写为-#
-f:跟踪显示文件新追加的内容;
文件的时间戳管理工具:
touch
文件:metadata, data
查看文件状态:stat
三个时间戳:
access time:访问时间,简写为atime,读取文件内容
modify time:修改时间,mtime,改变文件内容(数据)
change time:改变时间,ctime,元数据发生改变
touch [OPTION]... FILE...
-a:only atime
-m:only mtime
-t STAMP:[[CC]YY]MMDDhhmm[.ss]
-c:如果文件不存在,则不创建!
Linux:Day3 文件系统的更多相关文章
- Linux及文件系统基本介绍
Linux及文件系统基本介绍 1 互联网行业现状 在服务器端市场: 超级计算机 2014年11月的数据显示前500系统中的485个系统都在运行着 Linux 的发布系统,而仅仅只有一台运行着 Wi ...
- [20150925]Linux之文件系统与SHELL
Linux之文件系统与SHELL 文件系统介绍 ext2/ext3/ext4 Ext2是GNU/Linux系统中标准的文件系统.这是Linux中使用最多的一种文件系统,它是专门为Linux设计的,拥有 ...
- 文件系统管理 之 Linux 创建文件系统及挂载文件系统流程详解
阅读此文,必须具备知识点:<Linux 查看磁盘分区.文件系统.使用情况的命令和相关工具介绍><实例解说 fdisk 使用方法><合理规划您的硬盘分区><Fe ...
- linux ext2 文件系统学习
Linux ext2文件系统理解 硬盘组成: 硬盘由多个圆形硬盘片组成.按照硬盘片能够容纳的数据量分为单盘和多盘.硬盘的数据读取主要靠机械手臂上的磁头,在机械手臂上有多个磁头.机械手臂不动硬盘旋转一 ...
- linux下文件系统类型的学习
1. 以超级用户权限登陆Linux,进入 /lib/modules/2.6.32--504.el6.x86_64/kernel/fs目录执行 ls 命令(不同Linux发行版本的Fs目录有些不同你可 ...
- Linux根文件系统的制作
转载:http://www.cnblogs.com/hnrainll/archive/2011/06/09/2076655.html 1. 根文件系统 文件系统是包括在一个磁盘(包括光盘.软盘.闪盘及 ...
- linux的文件系统及节点表
linux的文件系统及节点表 一 linux的文件系统1 我们都知道当我们安装linux时会首先给系统分区,然后我们会把分区格式化成EXT3格式的文件系统.那么在linux系统中还有没有其他的文件系 ...
- linux虚拟文件系统2
转自:http://rstevens.iteye.com/blog/849413 一.概述 Linux 文件系统是相当复杂的,本文只分析虚拟文件系统的实现,对具体的文件系统不涉及. 即使是虚拟文件系统 ...
- 【转】完美解读Linux中文件系统的目录结构
一.前 言 接触Linux也有一段时间了,不过这几天在编译开源程序时,才发现自己对linux文件系统的目录结构了解的不够透彻,很多重要目录都说不清楚是用来干嘛的,于是在网上百度了一下这方面的介绍,根据 ...
随机推荐
- java 反射模式
反射模式优化工厂类大量switch分支问题 继续上一篇工厂模式的案例,上一篇只有两个算法类(加法和减法),现在再加一个乘法 第一步: //运算类 public class Operation { pr ...
- 快速掌握JavaScript面试基础知识(三)
译者按: 总结了大量JavaScript基本知识点,很有用! 原文: The Definitive JavaScript Handbook for your next developer interv ...
- js 正则表达式之环视结构
一.环视 1:环视不“占用”字符,只匹配字符所在的特定位置. 2:正则表达式是从左向右进行匹配的. 二.肯定顺序环视(?=....) 子表达式匹配当前位置的右侧字符 图中:红色表示当前位置,绿色表示正 ...
- linux学习笔记-wget相关知识
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! wget是非交互式的网络文件下载工具,这里参考帮助文档,记录下实用参数和使用方法. 一.wget的实用参数: wget: 用法: ...
- jQuery插件之上传文件ajaxfileupload.js源码与使用
在网页应用中,一般会用到上传文件或者图片什么的到服务器,那么可以用ajaxfileupload.js,但是在使用ajaxfileupload.js时候,当服务器返回的json带有&符号的时候, ...
- 【20190130】CSS-文字排版
字间距:letter-space:**px: 禁止中文词内换行:给每个单词设置 white-space: nowrap;
- iOS ---------NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
遇到此问题的解决办法: 使用<NSURLSessionDelegate>中的didReceiveChallenge方法,方法中的代码如下: - (void)URLSession:(NSUR ...
- Android为TV端助力 apk静默安装
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/47803149 之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢 ...
- IDEA基于Maven Struts2搭建配置及示例
1.web.xml加载struts框架即过滤器,要注意struts版本不同过滤器配置也不同. <!DOCTYPE web-app PUBLIC "-//Sun Microsystems ...
- Android 与Java 进程退出 killProcess与System.exit
android所有activity都在主进程中,在清单文件Androidmanifest.xml中可以设置启动不同进程,Service需要指定运行在单独进程?主进程中的主线程?还是主进程中的其他线程? ...