Shell檢視linux的組裡面有哪些使用者

2021-08-20 12:44:41 字數 835 閱讀 9363

1.使用shell指令碼找出linux的每個group都有哪些使用者:

#!/bin/bash  

for line in $(cat /etc/group)

do gid1=$(echo $line | awk -f: '')

group=$(echo $line | awk -f: '')

echo -n "$group":

for line2 in $(cat /etc/passwd)

dogid2=$(echo $line2 | awk -f: '')

user=$(echo $line2 | awk -f: '')

if [ "$gid2" == "$gid1" ];then

echo -n "$user"";"

fi

done

echo

done

2.測試結果:

3.上面的指令碼有乙個問題就是for裡面預設分隔符是空格->tab符->\n換行

如果for line in $(cat /etc/group)裡面的cat的檔案的行是有空格的話

需要1>在指令碼之前加入下面:

oldifs=$ifs

ifs=$'\n'

用完後ifs=$oldifs

2>或者使用while:

while read -r line

doecho $line

done < filename

檢視linux系統的預設shell

方式一 使用命令列 echo shell root localhost desktop echo shell bin bash 由此可知系統預設的shell是bash 方式二 通過檢視系統建立使用者時使用的shell來檢視 root localhost desktop grep root etc p...

Linux檢視實時網速的Shell

這是乙個可以檢視linux主機實時網速的shell指令碼,它能夠根據網速自動調整單位以便更好的顯示網速。linux顯示實時網速的shell 在工作過程中,會遇到伺服器非常卡頓的情況,因為伺服器是多人同時使用的,為了全面的分析伺服器卡頓的原因,依次檢查了cpu 記憶體 磁碟io的情況,但是都沒有發現明...

linux檢視當前shell的方法

1 實時檢視當前程序中使用的shell種類 推薦 如下 ps grep awk 注 表示shell的程序號 2 最常用的檢視shell的命令,但不能實時反映當前shell 複製 如下 echo shell 3 更簡潔,但並不是所有shell都支援 複製 如下 echo 0 4 環境變數中shell的...