1. 程式人生 > >linux awk命令批量關閉系統開機自啟動服務

linux awk命令批量關閉系統開機自啟動服務

awk命令 批量關閉系統開機自啟動服務

安裝好一個新的系統之後,為了簡化系統需要關閉一些開機自啟動的服務。

蝸牛使用了grep和awk的基礎命令進行操作。

作為服務器使用,新系統中需要啟動的服務大概就以下幾個

crond network sshd rsyslog


查看運行級別3開機自啟動的服務

chkconfig --list|grep 3:on

技術分享

步驟1:對服務名字進行采集

通過grep濾出3:on的服務,然後排除crond network sshd rsyslog 這四個選項,然後實用awk輸出第一列內容

chkconfig --list|grep 3:on|grep -Ev "network|sshd|crond|rsyslog"|awk ‘{print $1}‘


技術分享

這裏實用了awk的基礎操作,這裏介紹awk的一個參數 -F 後面添加字段分割符 使用之後 可以使用$0 $1 等等的字段來過濾 如果不使用-F 默認的分割符為空格,所以上面的操作直接使用了$1 輸出之後就是上圖中的內容

$0為整行 $1為第一列 。。

技術分享

步驟2:對采集的數據組合成命令並交個bash處理

chkconfig --list|grep 3:on|grep -Ev "network|sshd|crond|rsyslog"|awk ‘{print $1}‘|awk ‘{print "chkconfig " $1 " off"}‘|bash

需要註意的是,後面的chkconfig的後面和off前面必須有一個空格與awk變量$1進行組合 然後發送給bash進行處理


操作結果如下

技術分享

這裏只是簡單的實用了一下awk 其他的強大功能,用到了再繼續寫。。。

本文出自 “不懈的蝸牛” 博客,請務必保留此出處http://songxiao.blog.51cto.com/12183698/1961289

linux awk命令批量關閉系統開機自啟動服務