目录-Linux
Linux文件系统: Linux: glibc 程序编译方式:
动态链接
静态编译 进程的类型:
终端:硬件设备,关联一个用户接口 与终端相关:通过终端启动
与终端无关:操作引导启动过程当中自动启动 操作系统的组成:
静态:kernel,application 文件系统:层级结构 FHS:filesystem hierarchy standard文件系统层级结构标准 http://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html /bin : 所有用户可用的基本命令程序文件;
/sbin:供系统管理员使用的工具
/boot:引导加载器必须用到的各种静态文件:kernel,initramfs(initrd),grub等
/dev : 存储特殊文件或设备文件;
设备有两种类型:字符设备(线性设备),块设备(随机设备);
/etc :系统程序的配置文件,只能为静态;
/home:普通用户的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户同名的子目录,/home/username;
/root:管理员的家目录:可选;
/lib :为系统启动或根文件系统上的应用程序(/bin,/sbin等)提供共享库,以及内核提供内核模块
libc.so.*:动态链接的c库
ld*:运行时链接器/加载器;
modules:用于存储内核模块的目录
/lib64:64位系统特有的存放64位共享库的路径;
/media:便携式设备挂载点,cdrom,floppy等;
/mnt :其他文件系统的临时挂载点;
/opt :附加应用程序的安装位置;可选路径;
/srv :当前主机为服务提供的数据;
/tmp :为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所有用户执行写入操作;有特殊权限;
/usr:usr hierarchy ,全局共享的只读数据路径;
bin,sbin
lib,lib64
include:c程序头文件
share:命令手册和自带文档的架构特有文件的存储位置;
local:另一个层级结构;
X11R6:x-window程序的安装位置
src:程序源码文件的存储位置;
/usr/local:让系统管理员安装本地应用程序;也通常用于安装第三方程序;
/var :/var hierarchy , 存储常发生变化的数据的目录;
cache 应用缓存数据
lib 可变状态信息
local / usr / local的可变数据
lock 锁定文件
log 日志文件和目录
opt / opt的可变数据
run 与运行流程相关的数据
spool 应用假脱机数据
tmp 系统重新启动之间保留的临时文件 /proc :内核和进程存储其相关信息:他们多为内核参数,例如net.Ipv4.ip._forward,虚拟为net/ipv4/ip_forward,存储于/proc/sys/,因此其完整路径为/proc/sys/net/ipv4/ip_forward;虚拟文件系统;
/sys :sysfs 虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理Linux设备模型的接口;内核和系统信息虚拟文件系统 参考文档:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/index.html Linux文件上的文件类型:
-:常规文件;即f;
d:directory ,目录文件;
b:block device ,块设备文件,支持以"block"为单位进行随机访问;
c:character device ,字符设备文件,支持以"character"为单位进行线性访问;
major number :主设备号,用于标识设备类型,进而确定要加载的驱动程序;
minor number : 次设备号,用于标识同一类型中的不同的设备;
8位二进制:-
l:symbolic link,符号链接文件;
p:pipe,命令管道;
s:socket,套接字文件; Linux基本命令:
命令类型:
外部命令
shell内嵌命令 区分内外部命令:
type commend
内部:bulitin
外部:显示为命令文件路径;
注意:命令可以有别名;别名可以与原名相同,此时原名被隐藏;因此要获取原命令,则使用\command; 命令别名:
alias :获取所有可用别名的定义;
alias cmd :定义别名(注意:仅对当前shell进程有效);
unalias name:撤销别名; which:
显示命令完整路径; whereis:
显示二进制命令在何处,以及man手册;
-b:只查看二进制程序路径;
-m:只查看使用手册文件路径;
who:
查看登入到前端口的用户;
-b:显示系统最近一次启动时间;
-r:运行级别;
-u:
w:
who 的增强版,还可显示做什么,例如:CPU资源占用....; bash的基础特性1:history 历史命令:shell 进程会其会话中保存此前用户提交执行过的命令;
]# history
定制history的功能,可通过环境变量实现;
HISTSIZE:shell进程可保留的历史的条数;
HISTFLIE:持久保存命令历史文件;
.bash_history
HISTFILESIZE:命令历史文件数; 命令用法:
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...] -c:清空命令历史;
-d offset:清除某条历史命令;
-r:从文件读取命令历史至历史列表中;
-w:把历史列表中的命令追加至历史文件中;
history # :显示最近#条命令; 调用命令历史列表中的命令:
!#:调用第#条命令执行;
!!:再一次执行上一条命令;
!SITRING:再一次执行命令历史列表中最近一个以SIRING(开头字母,从下往上检索)开头的命令; 注意:命令的重复执行有时候需要依赖于幂等性; 调用上一条命令的参数:
快捷键:esc+.
字符串:!$ 控制命令历史记录的方式:
环境变量:HISTCONTROL
ignoredups:忽略重复的命令;
ignorespace:忽略以空白字符开头的命令
ignoreboth:以上两者同时生效; 修改变量的值:
NAME='VALUE' 总结:
FHS,命令及bash命令历史
FHS:
/bin,/sbin,/lib,/lib64,/etc
/home,/root
/boot
/media,/mnt
/proc,/sys
/tmp
/srv 为服务提供数据
/opt
/dev
/usr
/bin,/sbin,lib,lib64,share,local,include
/var
cache,lib,log,....
命令:which,whereis,who,w,alias,unalias
命令历史:history bash的基础特性2: 命令/路径补全
tab键 目录管理类命令:mkdir,rmdir mkdir: 创建目录
-p:递归创建目录
-v:显示创建详细过程
-m MODE:直接给定权限 rmdir: 移除空目录
-p:只要目录为空就删除,连续执行;(不提倡使用)
-v:显示过程; 实践:
如何创建/tmp/x/y1,/tmp/x/y2,/tmp/x/y1/a,/tmp/x/y1/b?
如何创建a_c,a_d,b_c,b_d;
创建目录结构/tmp/mysysroot/
bin
sbin
etc
sysconfig
network-scripts
usr
bin
local
bin
etc
lib
lib64
var
cache
log
run ├── sysmyroot
│ ├── bin
│ ├── etc
│ │ └── sysconfig
│ │ └── network-scripts
│ ├── sbin
│ ├── usr
│ │ ├── bin
│ │ ├── lib
│ │ ├── lib64
│ │ └── local
│ │ ├── bin
│ │ └── etc
│ └── var
│ ├── cache
│ ├── log
│ └── run bash的基础特性3:命令行展开
~:自动展开为用户的家目录,或指定的用户的家目录;
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多项式; 例如: mkdir -pv /tmp/x/{y1/{a,b},y2}
mkdir -v {a,b}_{c,d}
mkdir -pv /tmp/sysmyroot/{bin,sbin,etc/sysconfig/network-scripts,usr/{bin,local/{bin,etc},lib,lib64},var/{cache,log,run}} tree命令:
-L level : 指定要显示的层级; bash的基础特性4: 命令的执行状态结果
命令执行的状态结果:
bash通过状态返回值来输出此结果;
成功:
失败:- 命令执行完成之后,其状态返回值保存于 bash 的特殊变量$?中; 命令正常执行时,有的还会有命令返回值;
根据命令及功能不同,结果个不相同; 引用命令执行结果:
$(cmd)
`cmd 例如: -pv /tmp/$(date +%H-%M-%S) bash的基本特性5:引用
强引用:''
弱引用:""
命令引用:`` bash的基础特性6:快捷键
ctrl+a
ctrl+e ctrl+u
ctrl+k ctrl+l 文本查看命令:cat,tac,head,tail,more,less 分屏查看命令: more 和 less more命令:
more FILE
特点:翻屏至文件尾部后自动退出;
less命令:
less FILE
head命令:
查看文件的前n行;默认前10行;
-n # :查看前#行
-# :查看前#行
tail命令:查看文件的后n行;
-n #
-#
-f:查看文件结尾内容结束后不退出,跟随显示新增的行; stat命令:显示文件或文件系统的状态;
文件:两类数据;
元数据(数据的数据):metadata
数据:date
时间戳:
Access最近访问: -- ::50.310818675 +
Modify最近更改: -- ::50.310818675 + //数据改变
Change最近改动: -- ::50.310818675 + //元数据改变 touch命令: 修改/更新文件时间戳;路径没有文件默认创建文件;
-c:指定的文件路径不存在时不予创建;
-a:仅修改access time;
-m:仅修改modify time;
-t STAMP :
[[CC]YY]MMDDhhmm[.ss] 文件管理工具: cp,mv,rm
cp命令:copy
源文件:目标文件;
单源复制: cp [OPTION]... [-T] SOURCE DEST(目标文件)
多源复制: cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE... 单源复制:
如果DEST不存在:则事先创建此文件,并复制文件数据流到DEST中;
如果DEST存在:
如果DEST为非目录文件:则覆盖目标文件;
如果DEST是目录文件:则事先DEST目录下创建一个与源文件同名的文件,并复制其数据流;
多源复制:
如果DEST不存在:错误;
如果DEST存在:
如果DEST为非目录文件:错误;
如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名;
常用选项:
-i:交互式复制,即覆盖之前提醒用户确认;
-f:force强制覆盖文件;
-r,-R:递归复制文件;
-d:复制符号链接文件本身,而非其指向的源文件;
-a: -dR --preserve=all,archive,用于实现归档;
--preserve=
mode:权限
ownership:属主和属组
timestamps:时间戳
context:安全标签
xattr:扩展属性
links:符号链接
all:上述所有属性
mv命令:
mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
常用选项:
-i:交互式;
-f:force
.....
rm命令:
rm [OPTION]... FILE...
常用选项:
-i:交互
-f:强制
-r:recursive递归
删除目录:rm -fr /PATH (删除操作危险,慎用!!!)
可以自建回收站,将要删除的文件移动到每个文件夹;
变量:
命令的内存空间:
变量类型:
字符型
数值型
精确数值;
近似数值;
存储格式,数据范围,参与运算; 变量的赋值操作:name=tom 浮点数值如何存储? 总结:
bash特性:命令补全,路径补全,命令补全
文件及目录的复制,移动,删除
变量:变量类型 \:
在命令前加上反斜杠临时取消使用别名
例如:\ls,则直接调用ls的原始命令而不会使用alias设置的带有color选项的命令
目录-Linux的更多相关文章
- 复制档案或目录 linux cp命令详解
cp (复制档案或目录) [root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[root@linux ~]# cp [options ...
- 十二、文件和目录——Linux文件系统结构
12.1 Linux文件系统结构 12.1.1 文件操作基本元素 文件操作相关的最基本元素是:目录结构,索引节点和文件的数据本身 目录结构(目录项) 索引节点(i 节点) 文件的数据 12.1.2 文 ...
- /bin、/sbin、/usr/bin、/usr/sbin目录Linux执行文档的区别
/bin./sbin./usr/bin./usr/sbin目录的区别 在linux下我们经常用到的四个应用程序的目录是/bin./sbin./usr/bin./usr/sbin .而四者存放的文件 ...
- linux发行版基础目录
linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...
- linux下的/dev/shm目录
linux下的/dev/shm目录 linux中/dev目录下一般都是一些设备文件,例如磁盘.内存.摄像头等. /dev/shm这个目录是linux下一个利用内存虚拟出来的一个目录,这个目录中的文件都 ...
- Linux下/proc目录简介
文章转载至:http://blog.csdn.net/zdwzzu2006/article/details/7747977 1. /proc目录Linux 内核提供了一种通过 /proc 文件系统,在 ...
- Linux基本命令 目录
Linux基本命令 目录 Linux基本命令(1)管理文件和目录的命令 Linux基本命令(2)有关磁盘控件的命令 Linux基本命令(3)文件备份和压缩的命令 Linux基本命令(4)有关关机和查看 ...
- linux的文件属性介绍、目录及路径表示方法
一.认识linux文件 认识linux下的文件需要先学习命令:ls. 该命令用于显示指定目录下的内容,其中最常用的参数有: -l显示目录和文件的完整属性信息 -a显示所有文件和目录,包含隐藏文件和目录 ...
- 【转】linux中的常见目录及文件
1. /proc目录 Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构.改变内核设置的机制.proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以 ...
随机推荐
- Android开发之WebView的开发使用(源码分享)
假设我们想提供一个web应用程序(或仅仅是一个网页)作为client应用程序的一部分,我们能够使用WebView.WebView类是Android的视图类的扩展,它同意您显示web页面的一部分活动布局 ...
- jsonArray和Java List对象互转,日期处理
List转jsonArray : // 格式化日期 JsonConfig jsonConfig = new JsonConfig(); DSHJsonDateValueProcessor dshJso ...
- linux(centos)下安装git并上传代码些许步骤(亲自验证过的步骤)
曾经听说了好多次github,但直到近期才第一次学习使用github来托管自己在linux下的代码! 说实话.我自己在使用的时候从网上查了好多教程.但总认为难以掌握(步骤过于繁琐),自己操作的时候还 ...
- wox 快速搜索程序
windows启动栏的搜索,会经常找不到exe. 使用wox可以非常快速的找到启动程序 https://github.com/Wox-launcher/Wox/ 安装完成后,默认alt+space出现 ...
- poj3041——最小点覆盖
Bessie wants to navigate her spaceship through a dangerous asteroid field in the shape of an N x N g ...
- 【转】iOS开发-关闭/收起键盘方法总结
原文网址:http://www.cnblogs.com/GarveyCalvin/p/4167759.html 前言:作为IOS开发人员,需要经常和表单打交道.因此我对收起键盘的方法作了下总结,IOS ...
- 267C
二分+高斯消元 我们利用物理里的势能来表示,每个点有一个势能h,再由流量守恒可以得到deg[x]*h[x]=sigma(h[y]) 如果x,y之间有边.这个式子是由流量守恒推出的,所以当x=1或n是不 ...
- Device /dev/sdb1 not found (or ignored by filtering)
/etc/lvm/lvm.conf filters
- protobuf 编译 java js文件详解
首先下载protobuf.exe 下载地址:https://download.csdn.net/download/qq_34756156/10220137 MessageBody.proto synt ...
- C - Football
Problem description Petya loves football very much. One day, as he was watching a football match, he ...