linux 入门基础 (二)

主要内容包含有 文件查找、压缩和正则表达式,以及包是管理和安装。

文件查找

locate非实时查找(数据库查找):速度快,模糊查找
-i 不区分大小写的搜索
-n N 只列举前N个匹配项目
updatedb 更新数据库

find
find实时查找:速度略慢,精确查找,
-maxdepth  最大搜索目录深度,指定目录为第一级
-mindepth level 最小搜索目录深度
根据文件名和inode查找
-name “文件名称”:支持使用glob
-iname “文件名称”:不区分字母大小写
-inum n 按inode号查找
-samefile name 相同inode号的文件
-links n 链接树为n的文件
-regex “pattern”: 以pattern匹配整个文件路径字符串,而不仅仅是文件名称

组合条件
与:a
或:-o
非:not,!

根据属主,属组查找:
-user usernanme:查找属主为指定用户(uid)的文件
-group grpname:查找属组为指定组(gid)的文件
-uid UserID:查找属主为指定的UID号的文件
-gid GroupID:查找属组为指定的GID号的文件
-nouser:查找没有属主的文件
-nogroup:查找没有属组的文件

根据文件类型查找:
-ype TYPE:
f:普通文件
d:目录文件
l:符号链接文件
s:套接字文件
b:块设备文件
c:字符设备文件
p:管道文件

摩根定律

根据权限查找:
-perm [/|-] MODE
MODE:精确权限匹配

 

compress  uncompress
-d : 解压缩相当于uncompress
-c :结果输出至标准输出,不删除原文件
-v :
gzip option file
-d:解压缩,相当于gunzip
-c:将压缩或解压缩的结果输出至标准输出
-#:1-9 指定压缩比,值越大压缩比越大
zcat:不显示压缩的亲体下查看文本文件内容

bzip2 option file
-k:keep,保留原文件
-d:解压缩
-#:1-9,压缩比,默认为6
bzcat:不显示解压的前提下查看文本文件

xz option file
-k:keep,保留文件
-d:解压缩
-#:1-9,压缩比,默认为6
xzcat:不显示解压的前提下查看文本文件

打包压缩:
zip -r
解包:unzip

tar 工具   c 创建  v 显示过程 f 指定文件名字 t 显示内容 –delete 删除文件  x  解包
tar option
tar -cvf 创建包
tar -tf 查看包
tar –delete  删除某个包

cpio : cpio 命令是通重定向的方式将文件进行打包备份,还原回复的工具,它可以解压
以.cpio 或者 .tar结尾的文件

cpio 文件名或者设备名
选项 –
-o 将文件拷贝打包成文件或者将文件输出到设备上
-i 解包,将文件解压或将设备上的备份还原到系统
-t 预览,查看文件内容或者输出到设备上的文件内容
-v 显示打包过程中的文件名称
-d 解包生成目录,在cpio还原时,自动的建立目录
-c 一种较新的存储方式

 

正则表达式

正则表达式分为基本正则表达式(BRE)和扩展正则表达式(ERE)
正则是由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或者通配的功能。
* 匹配前面的字符任意次,包括零次
贪婪模式:尽可能长的匹配
.* 任意长度的任意字符
\?匹配前面的字符0次或1次
\+ 匹配前面的字符至少1次
\{n\} 匹配前面的字符n次
\{m,n}  匹配前面的字符知道好m次,最多n次
\{,n} 匹配前面的字符最多n次
\{n,\} 匹配前面的字符最少n次
^ 行首锚定,用于模式的最左侧
$ 行尾锚定,用于模式的最右侧
^pattern$ 用于模式匹配整行
\< 或 \b 词首锚定,用于单词模式的左侧
\> 或 \b 词尾锚定,用于单词模式的右侧
\<pttern\> 匹配整个单词
或者:\|

扩展正则表达式:
egrep = grep -E
字符匹配:
. 任意单个字符
[] 指定的字符范围
[^] 不指定的字符范围\

 

包的管理和安装

二进制应用程序的组成部分:二进制文件,库文件,配置文件,帮主文件

程序包管理器:
源代码:name-version.tar.gz|bz2|xz

rpm包命名方式:
name-version-release.arch.rpm
包:分类和拆包
application-devel-version-arch.rpm 开发子包
application-utils-version-arch.rpm 其他子包
application-libs-version-arhc.rpm 其他子包

包之间可能存在依赖关系,甚至循环依赖
解决依赖包管理工具:
yum:rpm 包管理器前端工具
apt-get:deb 包管理器前端工具
zypper:suse上的rpm前端管理工具
dnf:Fedora 18+ rpm 包管理器前端工具

查看二进制程序所依赖的库文件
ldd/path/to/binary_file

管理及查看本机装载库文件
idconfig  加载库文件
/sbin/idconfig -p : 显示本机已经缓存的所有可用库文件名及文件路径映射关系
配置文件:/etc/ld.so.conf, /etc/ld.so.conf.d/.*conf
缓存文件:/etc/ld.so.cache

程序包管理器:将编译好的应用程序的各组成文件打包一个几个程序包文件,从而方便快捷地实现程序包的安装,卸载,查询
包文件组成
rpm 包内的文件
rpm 买的元数据,如名称,版本,依赖性,描述等,安装或卸载时运行的脚本

数据库:/var/lib/rpm
程序包名称及其版本
依赖关系
功能说明
包安装后生成的文件路径及校验码信息

CentOs 系统上使用rpm命令管理程序包
安装,卸载,升级,查询,校验,数据库维护
安装 {-i|–install} [install-options] package_file
-v:verbose
-vv:
rpm 包安装

rpm 包升级
rpm {-U|–upgrade} [install-options] package_file
rpm {-F|–freshen} [install-options] package_file
upgrade : 有旧版本升级,没有则安装
freshen : 有旧版本升级,没有不操作
–oldpackage : 降级
–force : 强制安装

 

 

 

 

 

 

 

 

 

 

 

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/86870

(0)
5220367552203675
上一篇 2017-09-10 21:12
下一篇 2017-09-10 22:51

相关推荐

  • mitaka版本openstack网络之open vSwitch

    作者:【吴业亮】 博客:http://blog.csdn.net/wylfengyujiancheng 一、硬件配置及服务拓扑1. controller节点:一块网卡2. 网络节点:四块网卡。3. 计算节点:三块网卡 controller节点1. 运行 neutron数据库2. 运行消息队列服务3. 运行认证。4. 运行OpenStack计算nova相关网络…

    2018-01-22
  • CentOS7常用网络管理命令总结

    一、CentOS7网络接口命名策略(systemd)二、CentOS7的基础网络管理命令2.1 NetworkManager服务2.2 nmtui文本交互式工具2.3 nmcli命令行接口工具nmcli的语法说明NetworkManager整体状态显示显示所有连接或仅活动的连接显示所有设备的状态显示指定设备的所有连接属性添加动态的以太网连接(DHCP)添加静…

    Linux干货 2016-06-09
  • 利用heartbeat构建高可用http

    一、实验准备:  1)实验环境:          2)同步时间;确保可以使用主机名通信;确保可以使用ssh秘钥方式进行彼此登录;由于是两台设备,需要仲裁;  确保可以使用主机名通信 web1修改hosts文件如下: 172.16.2.12 web1.linux.com…

    Linux干货 2015-07-08
  • 系统管理和内核管理(二)之grub使用、编译安装内核

    系统管理和内核管理(二)之grub使用、编译安装内核   回顾CentOS 6启动流程: POST –> Boot Sequence(BIOS) –> Boot Loader –> Kernel(ramdisk) –> rootfs–> switchroot&…

    Linux干货 2016-09-15
  • centos6安装docker

    使用的操作系统是是centos6.3,按照官方的推荐的配置,把linux内核升级到3.8以上。安装步骤如下: 1、升级内核版本(包含aufs) cd /etc/yum.repos.d     wget http://www.hop5.in/yum/el6/hop5.repo   …

    Linux干货 2016-05-05
  • 马哥教育网络19期+第十三周课程练习

    1、建立samba共享,共享目录为/data,要求:(描述完整的过程)   1)共享名为shared,工作组为magedu;   2)添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名;   3)添加s…

    Linux干货 2016-08-12