十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

格式说明:

操作

概念

命令

说明及举例


十二.文件查找和压缩、rpm包管理、yum、while循环、until循环


tar

tar -zcvf /testdir/etc.tar.gz /etc/ 备份etc创建etc.tar.gz文件 压缩为gz格式 显示过程
tar -jcvf /testdir/etc.tar.bz2 /etc/ 备份etc创建etc.tar.bz2文件 压缩为bz2格式 显示过程
tar tvf /testdir/etc.tar 预览
tar xvf /testdir/etc.tar.xz 解压缩到当前目录
tar xvf /testdir/etc.tar.xz -C /testdir/ 指定解压缩的目录

cpio 复制 从或到文件

-o 将文件拷贝打包成文件或将文件输出到设备上
-i 解包
-t 预览
-v 显示过程
-d 解包生成目录
-c

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

for,while.until

for

for 变量名 in 列表;do
循环体
done

1
for id in 1 2 3 4 5
do
echo "the number is $id"
done
2
for file in /root/bin/.sh
do
echo "the filename is basename $file"
done
3
for arg in "$
"
do
echo "the arg is $arg"
done

练习
1
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环2
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

3
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环


十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

5
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环6
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

while

while 条件;do
    循环体
done

练习
1
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

2
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环 3
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

4
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

until

until 条件;do
    循环体
done

break 退出循环

continue 结束当此循环

rpm包管理

安装

rpm {-i|--install} [install-options] PACKAGE_FILE…  
-v: verbose  
-vv:  
-h: 以#显示程序包管理执行进度  
rpm -ivh PACKAGE_FILE ...  
-q 查询
-ql 查看某个包安装后文件储存路径

[install-options]  
--test: 测试安装,但不真正执行安装;dry run模式  
--nodeps:忽略依赖关系  
--replacepkgs| replacefiles   重装覆盖包(包名一样)|覆盖个别文件(包命不一样)
--nosignature: 不检查来源合法性  
--nodigest:不检查包完整性  
--noscipts:不执行程序包脚本片断  
%pre: 安装前脚本;--nopre  
%post: 安装后脚本;--nopost  
%preun: 卸载前脚本;--nopreun  
%postun: 卸载后脚本;--nopostun

升级

rpm {-U|--upgrade} [install-options] PACKAGE_FILE...
rpm {-F|--freshen} [install-options] PACKAGE_FILE...
upgrade:安装有旧版程序包,则“升级”
如果不存在旧版程序包,则“安装”
freshen:安装有旧版程序包,则“升级”
如果不存在旧版程序包,则不执行升级操作
rpm -UvhPACKAGE_FILE ...
rpm -FvhPACKAGE_FILE ...
--oldpackage:降级
--force: 强行升级

查询

rpm {-q|--query} [select-options] [query-options]

[select-options]
-qa: 所有包
-qf: 查看指定的文件由哪个程序包安装生成
-qp rpmfile:针对尚未安装的程序包文件做查询操作;
--whatprovidesCAPABILITY:查询指定的CAPABILITY
由哪个包所提供
--whatrequiresCAPABILITY:查询指定的CAPABILITY被哪个包所依赖
-ql +包名:已经装了,看装到哪
-qpl +包名:包没装的时候查看如果装,会装到哪
rpm2cpio 包文件|cpio–itv预览包内文件
rpm2cpio 包文件|cpio–id “*.conf”释放包内文件
[query-options]
--changelog:查询rpm包的changelog
-c: 查询程序的配置文件
-d: 查询程序的文档
-i: information
-l: 查看指定的程序包安装后生成的所有文件;
--scripts:程序包自带的脚本片断
-R: 查询指定的程序包所依赖的CAPABILITY;
--provides: 列出指定程序包所提供的CAPABILITY;

卸载

-e

包校验

rpm {-V|--verify} [select-options] [verify-options]
S file Size differs
M Mode differs (includes permissions and file type)
5 digest (formerly MD5 sum) differs
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs
G Group ownership differs
T mTimediffers
P capabilities differ

导入检测工具后具有检测能力

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

导入所需要公钥:

rpm -K|checksigrpmfile检查包的完整性和签名
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
CentOS 7发行版光盘提供:RPM-GPG-KEY-CentOS-7
rpm -qagpg-pubkey*

rpm数据库

数据库重建:

/var/lib/rpm
rpm {--initdb|--rebuilddb}
initdb: 初始化
如果事先不存在数据库,则新建之
否则,不执行任何操作
rebuilddb:重建

无论当前存在与否,直接重新创建数据库

yum

YUM: YellowdogUpdate Modifier,rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,up2date的替代工具
yum repository: yum repo,存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下)
文件服务器:
ftp://
http://
file:///

yum配置文件

yum客户端配置文件:

/etc/yum.conf:为所有仓库提供公共配置
/etc/yum.repos.d/*.repo:为仓库的指向提供配置
仓库指向的定义:
[repositoryID]
name=Some name for this repository
baseurl=url://path/to/repository/
enabled={1|0} 是否启用
gpgcheck={1|0} 检测合法性
gpgkey=URL 可以直接把密钥路径写在这里,就不用导入了 enablegroups={1|0}
failovermethod={roundrobin|priority}
默认为:roundrobin,意为随机挑选;
cost= 默认为1000

命令

显示仓库列表:

repolist[all|enabled|disabled]

显示程序包:

list  
# yum list [all | glob_exp1] [glob_exp2] [...]
# yum list {available|installed|updates} [glob_exp1] [...]

安装程序包:

install package1 [package2] [...]
reinstall package1 [package2] [...] (重新安装)

练习

1.打印等腰三角形

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

until练习

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

2.猜字
十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

十二.Linux博客-2016年8月16日文件查找和压缩、rpm包管理、while循环、until循环

原创文章,作者:自己泡面,如若转载,请注明出处:http://www.178linux.com/39201

(0)
自己泡面自己泡面
上一篇 2016-08-24 10:13
下一篇 2016-08-24 10:13

相关推荐

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

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]#cp -rf /etc/skel /home/tuser1[root@localhost ~]#chmod -R g…

    Linux干货 2016-07-16
  • YUM工具的工作原理、用法及源 码包的编译安装

    YUM工具的工作原理,用法及源码包的编译安装 _ueditor_page_break_tag_ 一、 CentOS: yum, dnf       1.YUM: (Yellow dogUpdate Modifier),rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,up2date的替代工具   …

    Linux干货 2016-09-01
  • 关于until循环在shell脚本中的实际应用

    Until循环在shell脚本中的实际应用 1、每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并提示该用户退出系统 2、随机生成10以内的数字,实现猜字游戏,提示比较大或小,相等则退出 3、编写脚本,求100以内所有正整数之和 4、编写脚本,通过ping命令探测1…

    Linux干货 2016-08-18
  • Linux基础指令(2)

    4.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?  元数据定义:      数据(Metadata),又称中介数据、中继数据,为描述 数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如…

    Linux干货 2016-11-09
  • ACL概述

    ACL概述 一、什么是ACL ACL是linux系统中一种被称为访问控制列表的权限控制方法,它是一种权限分配之外的普遍范式。在一般情况下,要确认三个权限组:owner、group和other。而使用ACL则可以增加权限给其他用户或组别,不再仅仅是在“other”中定义权限,可以允许指定的用户拥有不同于其所属组的权限。 ACL支持多种Linux文件系统,包括e…

    2017-07-29
  • crond实现邮件告警

    实验环境:centos 6.8 所需软件:mailx或msmtp或smtpEmail等 smtp客户端程序 所需帐号:我这使用的是163邮箱。 本方案优点:安装软件少,无须启动postfix等邮件服务。无须配置postfix邮件服务。由于调用的是注册邮箱,所以也不会给移入到垃圾邮件中。  建议:生产中,不管是什么服务发送邮件的建议使用外部smtp帐…

    Linux干货 2016-07-10