第五周

第五周作业

  • 简述rpm与yum命令的常见选项,并举例

Rpm:

-a, –all                        查询/验证所有软件包

-f, –file                       查询/验证文件属于的软件包

-g, –group                      查询/验证组中的软件包

-p, –package                    查询/验证一个软件包

-c, –configfiles                列出所有配置文件

-d, –docfiles                   列出所有程序文档

-l, –list                       列出软件包中的文件

-e, –erase=<package>+           清除 (卸载) 软件包

–nodeps                         不验证软件包依赖

-h, –hash                       软件包安装的时候列出哈希标记 (和 -v 一起使用效果更好)

-v, –verbose                    提供更多的详细信息输出

-i, –install                    安装软件包

Yum:

clean          删除缓存数据

deplist        列出软件包的依赖关系

info           显示关于软件包或组的详细信息

install        向系统中安装一个或多个软件包

list           列出一个或一组软件包

reinstall      覆盖安装软件包

-h, –help            显示此帮助消息并退出

-t, –tolerant        忽略错误

-q, –quiet           静默执行

-v, –verbose         详尽的操作过程

-y, –assumeyes       回答全部问题为是

–nogpgcheck          禁用 GPG 签名检查

 

  • 自建yum仓库,分别为网络源和本地源

本地源:

[cdrom]

Name=cdrom

Baseurl=file:///mnt

gpgcheck=0

Enabled=1

网络源:

2

3

4

5

[http]

name=mirrors 163

baseurl=http:///http://mirrors.163.com/centos/6.9/os/x86_64/

gpgcheck=0

enabled=1

 

 

  • 简述at和crontab命令,制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00

At:

  • at:未来时间点执行一次任务
    命令格式:at [option] TIME
    TIME:定义出什么时候执行这项任务
    时间格式:
    HH:MM [YYYY-mm-dd];
    HH:MM[am|pm] [Month] [Date];
    noon(正午), midnight(午夜), teatime(下午4点),tomorrow(明天)
    now+#{minutes—分钟,hours—小时,days—天, OR weeks—周}
    注:at 的作业有队列,存放在/var/spool/at 中,用单个字母来表示,默认都使用 a 队列;
  • 选项:
    常见选项:
    -q QUEUE:指明队列;
    -l:列出指定队列中等待运行的作业;相当于atq;
    -d #:删除指定作业号的作业;相当于atrm;
    -c #:查看指定作业号的具体作业任务;
    -v:可以使用较明显的时间格式列出at中的工作列表;
    -f /path/from/somefile:从指定的文件中读取任务,不再交互式输入;(# at -f /testdir/at.txt)
    -m:强制at发送邮件,表示执行完毕
    例:
    at10:00//设定10点执行at> ls /etc//进入到at模式中,设置要执行的任务Ctrl+d//设置完成后用Ctrl+d结束设置at-l//查看已设置的任务

Crontab:

 

10 03,05 * * 3   /bin/date ‘+%F +%T’ >> /tmp/data.txt

  • 简述sed常用操作命令,并举例

将文件内容按行读取到模式空间,根据条件进行匹配处理,并将结果输出,不修改源文件

sed [OPTION]… ‘script’ [input-file] …

options:

-n              不输出模式空间的内容

-e script;–expression=script      使用多个编辑命令

-f /PATH/TO/SCRIPT_FILE            导入sed脚本文件编辑每行数据

-r              使用扩展的正则表达式进行匹配

-i              直接编辑源文件

script:一般包含两部分,指定处理的行范围和编辑命令

行范围的定界表示方法:

空地址:对全文进行处理

指定地址:

#           单个数字指定行号

/PATTERN/   使用正则表达式

指定范围:

#,#         如3,5表示从第三行到第五行

#,+#        从起始行开始加指定行结束,如3,+2表示从第三行开始加上后面的二行

#,/pattern/ 从指定行开始,到第一个被模式匹配到的行结束,如果没有匹配的即到最后一行

/pattern/,/pattern/  表示第一个匹配的行到第二个匹配到的行

$            表示最后一行

#~#          步进,如1~2表示第1行开始,每次加2的行

编辑命令:

d            删除

p            显示

a \text      行后追加文本

i \text      行前插入文本

c \text      行替换,会将指定的行都替换

w /PATH/TO   保存模式空间匹配到的行至指定文件中

r /PATH/FROM 读取指定的文件,将文件内容追加至指定的行后面

=            对匹配到的行输出行号

!            对地址取反,即 3!d 非第3行删除

s///         查找替换

高级编辑命令:

sed处理行时有两个空间,模式空间和保持空间,两个空间的数据可以互相引用

上述的编辑命令都是在模式空间操作的,高级编辑命令会涉及保持空间

h   将模式空间的内容覆盖至保持空间

H   将模式空间的内容追加至保持空间

g   用保持空间的内容覆盖模式空间

G   将保持空间的内容追加至模式空间

x   将两个空间的内容互相交换

n   使用匹配到的行的下一行内容覆盖模式空间,即直接引用下一行的数据

N   将匹配到的行的下一行内容追加至模式空间

d   删除模式空间中的行

D   删除模式空间中的所有行

示例:

sed -n ‘3p’ /etc/fstab

将/etc/fstab文件中的第3行打印出来

sed ‘3d’ /etc/fstab

将/etc/fstab文件中第3行删除,即除了第3行的其他行全部输出

sed -n ‘/^UUID/p’ /etc/fstab

将/etc/fstab文件中UUID开头的行打印输出

sed ‘G’ /etc/fstab

在文件中的每一行追加一个空白行

sed ‘/^$/d;G’ /etc/fstab

将/etc/fstab文件中的所有空白行删除,然后在每一行后面追加一个空白行

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

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code