本文从如今开始,将针对本身面试当中没有答上来的或者不彻底对的题目记录下来,方便本身总结,也与你们一块儿分享,很少,正在积累!!!!(本文针对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的输入。这是一个功能很强且常见的技巧,但不多有人这么用,能够注意常用。