面試常用指令碼

2021-08-04 15:43:42 字數 3435 閱讀 9866

1、使用shell,建立class1 使用者組,再批量建立stu1--stu30 的使用者,並指定使用者組為

class1。

vi autoaddusr

#!/usr/bin/php -q

<?php

exec("groupadd class1");

for($i=1; $i<=30; $i++)

?>

chmod +x autoaddusr

./autoaddusr

2..編寫個shell 指令碼將當前目錄下大於10k 的檔案轉移到/tmp 目錄下

#/bin/sh

#programm :

# using for move currently directory to /tmp

for filename in `ls -l |awk '$5>10240 '`

domv $filename /tmp

done

ls -al /tmp

echo "done! "

將/usr/local/test目錄下大於100k 的檔案轉移到/tmp 目錄下。

答:find /usr/local/test -type f -size +100k -exec mv {} /tmp \;

192.168.100.2/255.255.255.0,那麼它的網路位址是

192.168.100.1/255.255.255.0

方法一:

1. #!/bin/bash

2. #this script print ip and network

3. file="/etc/sysconfig/network-scripts/ifcfg-eth0"

4. if [ -f $file ] ;then

5. ip=`grep "ipaddr" $file|awk -f"=" ''`

6. mask=`grep "netmask" $file|awk -f"=" ''`

7. echo "$ip/$mask"

8. exit 1

9. fi

方法二:

1. #!/bin/bash

2. #this programm will printf ip/network

3. #

4. ip=`ifconfig eth0 |grep 'inet ' |sed 's/^.*addr://g'|sed 's/ bcast.*$//g'`

5. netmask=`ifconfig eth0 |grep 'inet '|sed 's/^.*mask://g'`

6. echo "$ip/$netmask"

7. exit

4.有檔案file1

1、請用shell查詢file1 裡面空行的所在行號

awk 『』 file

orgrep -n ^$ file |awk 『begin』

2、編寫shellscript查詢file1 以abc 結尾的行

grep abc$ file1

3、列印出file1 檔案第1 到第3 行

sed -n 』1,3p』 file1

head -3 file1

5.編寫個shell 指令碼將/usr/local/test 目錄下大於100k 的檔案轉移到/tmp 目錄下

#!/bin/bash

for file in `ls /root`

doif [ -f $file ]; then

if [ `ls -l $file|awk ''` -gt 10000 ]; then

mv $file /tmp/

fifi

done

6.有個檔案如下:

得到的結果應該是:

3 a.domain.com

2 b.domain.com

1 c.domain.com

[root@mail ~]# awk 『beginend』 list| sort -r 答案

3 a.domain.com

2 b.domain.com

1 c.domain.com

7.處理以下檔案內容,將網域名稱取出並進行計數排序,如處理:

得到如下結果:

網域名稱的出現的次數 網域名稱

可以使用bash/perl/php/c 任意一種

8.列印第乙個域

[root@localhost bin]# cat 3

eqeqedadasdd

eqeqdadfdfdd

fdsfdsfqwedd

dsadasdsadsa

[root@localhost bin]#

[root@localhost bin]#

[root@localhost bin]# awk -f "" '' 3ee

fd9.用shell 程式設計,判斷一檔案是不是字元裝置檔案,如果是將其拷貝到/dev 目錄下?

#!/bin/bash

directory=/dev

for file in anaconda-ks.cfg install.log install.log.syslog

doif [ -f $file ]

then

cp $file $directory/$file.bak

echo " hi, $logname $file is backed up already in $directory !!"fi

done

10.某系統管理員需要每天做一定的重複工作,編制乙個解決方案:

(1).從下午4:50 刪除/abc 目錄下的全部子目錄和全部檔案;

(2).從早上8:00~下午6:00 每小時讀取/xyz 目錄下x1 檔案中每行第乙個域的全部數

據加入到/backup 目錄下的back01.txt 檔案內;

(3).每逢周一下午5:50 將/data 目錄下的所有目錄和檔案歸檔並壓縮為檔案

backup.tar.gz;

(4).在下午5:55 將ide 介面的cd-rom 缷載(假設cd-rom 的裝置名為hdc);

(5).在早上8:00 前開機後啟動。

常用指令碼 常用指令碼整理

1 addloadevent 網頁載入完成後把多個自己編寫的函式繫結到window.onload事件中 把現有的window.onload事件處理函式的值存入便令oldonload。如果在這個處理函式上還沒有繫結任何函式,就像平時那樣把新函式新增給它。如果在這個處理函式上已經繫結了一些函式,就把新函...

shell指令碼常用指令碼

go指令碼總結 shell指令碼在我們工作過程中會起到相當重要的作用,下面是我在一年工作中儲存下來的常用的指令碼。在某個程式需要完成多機部署,並且路徑一致的時候,通過指令碼來完成部署,啟動,終止是一件很方便的事情。bin bash author zhaoyixing breif 程式部署指令碼 br...

9個實戰及面試常用Shell指令碼編寫

目錄 注意事項 1 獲取隨機字串或數字 2 定義乙個顏色輸出字串函式 3 批量建立使用者 4 檢查軟體包是否安裝 5 檢查服務狀態 6 檢查主機存活狀態 方法1 將錯誤ip放到陣列裡面判斷是否ping失敗三次 方法2 將錯誤次數放到fail count變數裡面判斷是否ping失敗三次 方法3 利用f...