1、rpm與yum命令的常見選項
rpm常見選項
-i 安裝
-v 顯示進度條
-test 測試安裝,檢查依賴和沖突,不實際安裝
–nodeps? 忽略依賴關(guān)系
–replacepkgs 重新安裝
–noscript 不啟用腳本
–nosignature 不檢查簽名
–nodigest 不檢查完整性
升級
-F 升級
-U 沒有老版本則安裝
-oldpackage 降級
–force 強制升級
-e 卸載
–allmatches:卸載所有匹配指定名稱的程序包的各版本
–nodeps:忽略依賴關(guān)系
–test 測試模式
-q 查詢
-a 查詢所有已安裝的
-f 查詢文件由哪個程序包生成
-p 查詢該未安裝的程序包文
–whatprovides CAPABILITY:查詢指定的CAPABILITY由哪個程序包提供
–whatrequires CAPABILITY:查詢指定的CAPABILITY被哪個包所依賴
–changelog:查詢rpm包的changlog
-l, –list:程序安裝生成的所有文件列表
-i, –info:程序包相關(guān)的信息,版本號、大小、所屬的包組,等
-c, –configfiles:查詢指定的程序包提供的配置文件
-d, –docfiles:查詢指定的程序包提供的文檔
–provides:列出指定的程序包提供的所有的CAPABILITY
-R, –requires:查詢指定的程序包的依賴關(guān)系
–scripts:查看程序包自帶的腳本片斷
-V 校驗
示例
~]# rpm -ivh http://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.10.0-1.el7.ngx.x86_64.rpm
~]# rpm -evh nginx
~]# rpm -qa
~]# rpm -q -l zsh
yum常見選項
顯示倉庫列表 repolist
顯示程序包列表 list
安裝重裝程序包 install/reinstall
升級降級 update/downgrade
檢查可用升級 check-update
卸載 remove/erase
查詢程序包信息 info
查詢特征由哪個程序包提供 provides 相當(dāng)于rpm -qf
清理本地緩存 clean
構(gòu)建緩存 makecache
搜索 search
查看指定包所依賴的capabilities deplist
查看歷史 history
包租管理
groupinstall 組安裝
groupupdate 組升級
grouplist 組列表
groupremove 組刪除
groupinfo 組信息
示例
yum install zsh
yum list all
yum info zsh
2、自建yum倉庫
網(wǎng)絡(luò)源
編輯配置文檔
[net]
name=aliyun
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=0
enabled=1
本地源
掛載安裝光盤?~]# mount -r /dev/cdrom /mnt
創(chuàng)建配置文件并編輯~]# vim /etc/yum.repos.d/1.repo
[base1]
name=gongzyl
baseurl=file:///mnt/
gpgcheck=0
enable=1
yum repolist all 查看是否成功
3、at和crontab命令
at命令:未來某個時間點運行一次作業(yè)
格式 ○ at [OPTION]… TIME
時間格式:
HH:MM
noon(中午12點),midnight(夜晚12點), teatime(下午4點)
?tomorrow
now+#UNIT
選項
-l:查看作業(yè)隊列,相當(dāng)于atq
-f /PATH/FROM/SOMEFILE:從指定文件中讀取作業(yè)任務(wù),而不用再交互式輸入
?-d:刪除指定的作業(yè),相當(dāng)于atrm;
-c:查看指定作業(yè)的具體內(nèi)容;會顯示默認的環(huán)境變量等信息
-q QUEUE:指明隊列
corntab命令:周期性任務(wù)
crontab [-u user] file
用戶cron的配置格式:/var/spool/cron/USERNAMESHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root# For details see man 4 crontabs# Example of job definition:
# .—————- minute (0 – 59)
# | .————- hour (0 – 23)
# | | .———- day of month (1 – 31)
# | | | .——- month (1 – 12) OR jan,feb,mar,apr …
# | | | | .—- day of week (0 – 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
選項
-e:編輯任務(wù);
-l:列出所有任務(wù);
-r:移除所有任務(wù);即刪除/var/spool/cron/USERNAME文件;
-i:在使用-r選項移除所有任務(wù)時提示用戶確認;
-u user:root用戶可為指定用戶管理cron任務(wù);
示例:制定 每周三凌晨三、五點10分執(zhí)行某個腳本,輸出當(dāng)前時間,時間格式為?2017-12-28 10:00:00
10 3,5 *? * 3 root date ‘+%Y-%m+%d %h:%M:%S
4、sed常用操作命令
命令格式:sed [OPTION]… ‘script’ [input-file]
選項:
-n:不輸出模式空間中的內(nèi)容到屏幕;
-e script:能同時定制多個編輯命令腳本,每個腳本前帶-e;
-f /PATH/TO/SCRIPT_FILE:指定script來源文件,文件中一行為一個script;
-r,–regexp-extended:支持擴展正則表達式;
-i[SUFFIX]:直接編輯源文件
地址定界
(1) 空地址:對全文進行處理;
(2) 單地址:
#:指定行;
?/pattern/:被此模式所匹配到的每一行;
(3) 地址范圍
#,#:#行開始到#行結(jié)束結(jié)束
#,+#:從第#行加+#行結(jié)束
#,/pat1/ 從#行開始,到匹配到/pat1/行結(jié)束
$:最后一行;
(4) 步進:~
1~2:所有奇數(shù)行
2~2:所有偶數(shù)行
編輯命令:
d:刪除模式空間中的內(nèi)容;
~]# sed ‘1,5d’ /etc/fstab 刪除1-5行
~]# sed ‘/^UUID/d’ /etc/fstab 刪除UUID開頭的所有行
p:顯示模式空間中的內(nèi)容;
~]# sed -n 1~2p /etc/fstab 顯示奇數(shù)行
a \text 在行后面追加新行“text”,支持使用\n實現(xiàn)多行追加;
~]#sed ‘/UUID/a \#base uuid’ /etc/fstab
i \text:在行前面插入新行“text”,支持使用\n實現(xiàn)多行插入;
c \text:把匹配到的行替換為此處指定的文本“text”;整行替換
w /PATH/TO/SOMEFILE:保存模式空間匹配到的行至指定的文件中;
~]# sed ‘/^[^#]/w /tmp/123.456’ /etc/fstab
r /PATH/FROM/SOMEFILE:讀取指定文件的內(nèi)容至當(dāng)前文件被模式匹配到的行后面;文件合并;
=:為模式匹配到的行打印行號;會單獨占一行
!:條件取反;
地址定界!編輯命令;
~]# sed ‘/^#/!d’ /etc/fstab
s///:查找替換,其分隔符可自行指定,常用的有s@@@, s###等;
替換標(biāo)記:
g:全局替換;用的多
w /PATH/TO/SOMEFILE:將替換成功的結(jié)果保存至指定文件中;很少用
p:顯示替換成功的行;