本文從如今開始,將針對本身面試當中沒有答上來的或者不徹底對的題目記錄下來,方便本身總結,也與你們一塊兒分享,很少,正在積累!!!!(本文針對Linux)面試
一、在vi編輯器當中如何刪除全部的內容shell
方法1: 按ggdG 方法2: :%d
二、如何將指定目錄中.sh後綴的全部文件的後綴改成.shell(假如在當前目錄,一條命令所有修改)--批量修改文件名後綴bash
find ./ -name "*.sh" -exec rename "sh" "shell" {} \; ##{} 與\之間有空格編輯器
3. 求平均數及總數ide
[root@localhost ~]# cat 1.txtspa
zhangai 70blog
liugang 90.5排序
wangqi 93.5get
zhangai 99it
liugang 76
wangqi 80
zhangai 95
liugang 90
wangqi 89
要求輸出格式:(average:平均成績,total:總成績)
name#####average#####total
zhangai xxx xxx
liugang xxx xxx
wangqi xxx xxx
答案:
#!/bin/bash
echo -e "name###average###total"
for i in `awk '{print $1}' 1.txt|sort |uniq` ##對姓名進行排序
do
a=`grep $i 1.txt|awk '{print $NF}'|awk '{tot +=$1};END{print tot}'` ##awk '{print $NF}'輸出每行最後一個域的內容
b=`grep $i 1.txt|awk '{print $NF}'|awk '{tot +=$1};END{print tot/2}'`
echo -e "$i\t$b\t$a"
done
4. 多個目錄複製
# find /home/tolstoy/ -type d -print |sed 's;/home/tolstoy/;/home/lt/;' | sed 's/^/mkdir /' | sh -x
+ mkdir /home/lt/
+ mkdir /home/lt/aa
+ mkdir /home/lt/bb
+ mkdir /home/lt/cc
這個腳本使用了產生命令的手法,使命令內容成爲shell的輸入。這是一個功能很強且常見的技巧,但不多有人這麼用,能夠注意常用。