N25期–第十五周作業

1、    總結sed和awk的詳細用法;


2、刪除/boot/grub/grub.conf文件中所有行的行首的空白字符;
# sed  's@^[[:space:]]\+@@' /boot/grub/grub.conf

3、刪除/etc/fstab文件中所有以#開頭,后跟至少一個空白字符的行的行首的#和空白字符;
# sed  's@^#[[:space:]]*@@'  /etc/fstab

4、把/etc/fstab文件的奇數行另存為/tmp/fstab.3;
# sed '1~2w /tmp/fstab.3' /etc/fstab

5、echo一個文件路徑給sed命令,取出其基名;進一步地,取出其路徑名;

取基名:echo "/etc/sysconfig/network-scripts/" | sed 's@^.*/\([^/]\+\)/\?$@\1@'
取路徑名:echo "/etc/sysconfig/network-scripts/" | sed 's@[^/]\+/\?$@@'

6、統計指定文件中所有行中每個單詞出現的次數;
 awk '{for(i=1;i<=NF;i++){count[$i]++}}END {for (i in count) {print i,count[i]}}' /etc/fstab

7、統計當前系統上所有tcp連接的各種狀態的個數;

netstat -tan | awk '/^tcp\>/{state[$NF]++}END {for (i in state) {print i,state[i] }}'

8、統計指定的web訪問日志中各ip的資源訪問次數:

awk '{ip[$1]++}END{for(i in ip) {print i,ip[i]}}' /var/log/httpd/access_log


9、寫一個腳本:定義一個數組,數組元素為/var/log目錄下所有以.log結尾的文件的名字;顯示每個文件的行數;
#!/bin/bash
declare -a files
files=(/var/log/*.log)
for i in `seq 0 $[${#files[@]}-1]`;
    do wc -l ${files[$i]}
done

10、寫一個腳本,能從所有同學中隨機挑選一個同學回答問題;進一步地:可接受一個參數,做為要挑選的同學的個數;

#!/bin/bash 
function  duplicate() {   #判斷是否重復選擇,如果重復在選一次,直到不重復
for ((j=$[${#student[@]}-2];j>=0;j--));do
            if [ ${student[$j]} -eq ${student[$i]} ] 
            then
            student[$i]=$(($RANDOM % $a))
            duplicate
            fi
        done
}
read -p  "input the total student number,the first student no. is 0:" a
total=($(seq 0 $[$a-1]))
read -p "input how many student pick:" b
if [ $b -gt $a ]
then 
    echo "pick tpo more student"
elif [ $a -eq $b ]
then
    echo "pick every student"
else
    for ((i=0;i<$b;i++));do
        student[$i]=$(($RANDOM % $a))
        duplicate
        echo ${student[$i]}
    done
fi


11、授權centos用戶可以運行fdisk命令完成磁盤管理,以及使用mkfs或mke2fs實現文件系統管理;

visudo
User_Alias   DISK_ADMINS = centos
Cmnd_Alias   DISK_COMMAND = /sbin/fdisk, /sbin/mkfs, /sbin/mke2fs
DISK_ADMINS  ALL=(root) NOPASSWD: DISK_COMMAND

12、授權gentoo用戶可以運行邏輯卷管理的相關命令;
visudo
User_Alias  LVM_ADMINS = gentoo
Cmnd_Alias  LVM_COMMAND = /sbin/pv*, /sbin/vg*, /sbin/lv*
LVM_ADMINS  ALL=(root) NOPASSWD: LVM_COMMAND

useradd centos
echo "centos" | passwd --stdin centos
useradd gentoo
echo "gentoo" | passwd --stdin gentoo

[centos@node6 ~]$ sudo -l
用戶 centos 可以在該主機上運行以下命令:
    (root) NOPASSWD: /sbin/fdisk, /sbin/mkfs, /sbin/mke2fs
[gentoo@node6 ~]$ sudo -l
用戶 gentoo 可以在該主機上運行以下命令:
    (root) NOPASSWD: /sbin/pv*, /sbin/vg*, /sbin/vl*



13、基于pam_time.so模塊,限制用戶通過sshd服務遠程登錄只能在工作時間進行;

[root@localhost ~]# vim /etc/pam.d/sshd
account    required pam_time.so
[root@localhost ~]# vim /etc/security/time.conf 
*;*;*;MoTuWeThFr0900-1800#表示工作時間9點到下午6點允許訪問ssh

14、基于pam_listfile.so模塊,定義僅某些用戶,或某些組內的用戶可登錄系統;"
[root@localhost ~]# vim /etc/sshd_userlist
root
centos
gentoo
[root@localhost ~]# chmod 600 /etc/sshd_userlist 
[root@localhost ~]# chown root /etc/sshd_userlist 
[root@localhost ~]# vim /etc/pam.d/sshd
添加
auth        required pam_listfile.so item=user sense=allow file=/etc/sshd_userlist onerr=succeed

原創文章,作者:victorli88,如若轉載,請注明出處:http://www.www58058.com/72611

(0)
victorli88victorli88
上一篇 2017-05-08
下一篇 2017-05-08

相關推薦

  • Linux高級磁盤管理-RAID管理

    在馮諾依曼體系機構中,輸入輸出要存儲的外部磁盤I/O能力實在太低,尤其是企業面對高并發的訪問量,在系統內部需要大量調度磁盤的上的網頁文件資源,這些都會產生大量的I/O,一個磁盤的I/O能力不管如何提升畢竟是有線的,尤其是機械硬盤;同時為了保障業務的連續性,磁盤故障時必須提供冗余能力,面對這樣的實際需求環境,RAID技術產生了,通過組織磁盤陣列方式提供I/O,…

    Linux干貨 2016-09-06
  • 第六章:文本處理工具

    第六章:文本處理工具 文本查看命令(cat) 分頁查看文件(more) 文本查看上下翻頁(less) 顯示頭部(head) 顯示尾部(tail) 按列抽取文本cut 合并文件paste 收集文本統計數據wc 文本排序sort 刪除重復uniq 比較文件diff 復制對文件改變patch 文本搜索工具grep egrep 及擴展的正則表達式 作業: 第六章:文…

    Linux干貨 2016-08-10
  • 回溯法 -數據結構與算法

    1.回溯法算法思想: 定義:         回溯法(探索與回溯法)是一種選優搜索法,按選優條件向前搜索,以達到目標。但當探索到某一步時,發現原先選擇并不優或達不到目標,就退回一步重新選擇,這種走不通就退回再走的技術為回溯法,而滿足回溯條件的某個狀態的點稱為“回溯點”。 1、回溯法適用:有許多問題,當需要找出它的解集(…

    Linux干貨 2015-04-07
  • Ansible (playbook)

    一、YAML 1.1 YAML介紹 YAML是一個可讀性高的用來表達資料序列的格式。YAML參考了其他多種語言,包括:XML、C語言、Python、Perl以及電子郵件格式RFC2822等。Clark Evans在2001年在首次發表了這種語言,另外Ingy d?t Net與Oren Ben-Kiki也是這語言的共同設計者。 YAML Ain’t Marku…

    Linux干貨 2017-11-01
  • N25第一周作業-Linux初步認識

    一.描述計算機的組成及其功能。     計算機組成有兩部份,一為硬件,二為軟件OS         硬件:CPU,負責運算操作。          &…

    Linux干貨 2016-12-06
  • N22-love cat第19周 – 基于Apache + Tomcat +2種模式實現負載均衡以及配置集群seesion服務

      基于Apache+Tomcat實現負載均衡和集群服務 一、概念     從Tomcat權威指南中的測試數據,我們不難發現,對于靜態頁面的數據,Tomcat的處理速度比Apache要快很多,所以為什么要整合apache雖然在處理靜態頁面速度上比Apache快,但是Tomcat經不起大的并發量容易死。為此,我們就需要A…

    Linux干貨 2016-08-29

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-06-20 11:39

    怎么沒有總結sed和awk的具體用法啊?

欧美性久久久久