码迷,mamicode.com
首页 > 系统相关 > 详细

Linux运维学习笔记

时间:2016-07-21 22:09:49      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:linux   用户   

    今天在自学shell编程的过程中碰到一个题,是计算/etc/passwd文件中第10个用户和第20个用户的id号之和。在没有使用head和tail的情况下,学习了另一个命令。

    sed命令:

#####
#!/bin/bash
#vesion 2.0
echo "Add userid.id11 and id22."
#Made by abc
echo "Creation-time 20160720"
echo "Time Now: $(date +%Y-%m-%d)"

ID_Num11=$(cut -d: -f3 /etc/passwd | sed -n 11p)
echo "ID_Num11=$ID_Num11."

ID_Num22=$(cut -d: -f3 /etc/passwd | sed -n 22p)
echo "ID_Num22=$ID_Num22."

ID_SUM=$[$ID_Num11+$ID_Num22]
echo "The id sum: $ID_SUM."
#####

此处用到选项是-n,安静模式,经过处理的行会被列出。

将cut之后的内容送给sed后,列出第十一行的内容,也就是第十一个用户的ID号。

    第二个程序,写一个脚本计算/etc/rc.d/init.d/functions和/etc/inittab文件的空白行数之和。

#####
#!/bin/bash
#vesion 2.1
#made by GJy
echo "Creation-time 2016720"
echo "Function:Count empty line"
echo "Date Now: $(date +%Y-%m-%d)"

line_num1=$(grep -n ^#[[:space:]]*$ /etc/inittab | wc -l)
echo "The empty line number of /etc/inittab is $line_num1"

line_num2=$(grep -n ^[[:space:]]*$ /etc/rc.d/init.d/functions | wc -l)
echo "The empty line number of /etc/rc.d/init.d/functions is $line_num2"

emptyline_sum=$[$line_num1+$line_num2]
echo "The sum of empty line is $emptyline_sum."

echo "END"
#####

用到的是grep正则表达式,

grep -n   显示匹配行及行号;此处则为匹配到的空行传给wc命令,统计行数。


本文出自 “11808130” 博客,谢绝转载!

Linux运维学习笔记

标签:linux   用户   

原文地址:http://11818130.blog.51cto.com/11808130/1828579

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!