当前位置 :
帮忙写几个简单的Unixshell程序啊.懂的来写下!懂一个就写一个嘛,不一定全写3、请解释以下命令完成了什么功能?1)%exportPATH="$PATH:/usr/games"2)%cut-d;-f2/home/abc.data4、使用cat和重定向命令
1人问答
问题描述:

帮忙写几个简单的Unixshell程序啊.懂的来写下!

懂一个就写一个嘛,不一定全写

3、请解释以下命令完成了什么功能?

1)%exportPATH="$PATH:/usr/games"

2)%cut-d;-f2/home/abc.data

4、使用cat和重定向命令实现建立1个文件,然后复制文件,再在文件的末尾添加内容.

5、为便于系统管理员对磁盘分配的管理,请编写一段B-shell程序,当文件系统/home占用空间改变时给出相应的信息提示.要求/home占用量在系统磁盘中为:

1)小于50%时,提示“用户文件系统磁盘使用负荷量小”.

2)大于50%,小于90%时,提示“用户文件系统磁盘使用负荷量正常”.

3)大于等于90%时,提示“用户文件系统磁盘使用负荷量偏大”.

6、使用for循环语句编写一段B-shell程序,完成显示用户注册目录下的a_sub,b_sub子目录下的所有C程序文件及其目标文件的列表

7、假设score.txt文件中保存了三个班级的学生考试成绩,请编写一段shell程序计算每个班级的学生人数与平均分.

段旭东回答:
  3.   1).把PATH变量导出来,其实就是为了给后面的shell子程序使用,在这里其实相当于在原有的PATH基础上添加了一个/usr/games路径.   2).从文件/home/abc.data里面获取第2列,以分号(;)作为列分隔符,d代表分隔符(delimer),f代表字段(field)后面跟着具体的那一个字段,或者字段范围,如-f2-5就是截取第2列到第5列的内容   4.假设原有文件为a,那么可以如下方法做:   cata>b,创建了b文件   cpbc,复制b文件,生成c文件   添加内容,vic进去可以了   5.这个要根据(df)命令具体执行情况来进行编码,比如我的系统执行情况如下:   [u@H/billing/user/xufc]$df-vk/home   /home(/dev/vg00/lvol5):130104totalallocatedKb   124288freeallocatedKb   5816usedallocatedKb   5%allocationused   [u@H/billing/user/xufc]$   那么就可以编写如下脚本:   #!/bin/bash   Used=`df-vk/home|grep"allocationused"|awk'{print$1}'`   if[$Used-gt90]   then   x09echo"用户文件系统磁盘使用负荷量偏大"   else   x09if[$RL-gt50]   x09then   x09x09echo"用户文件系统磁盘使用负荷量正常"   else   x09x09echo"用户文件系统磁盘使用负荷量小"   x09fi   fi   6.先用find(或其他命令组合如lsxxx|grepxxx)找到相关c文件和目标文件,然后for循环打印出来   #!/bin/bash   #查找a_sub下此文件及其目标文件   afile=`find/$HOME/a_sub/-name"*.c"-o-name"*.o"`   bfile=`find/$HOME/b_sub/-name"*.c"-o-name"*.o"`   #合并找到的文件到cfile中   catafilebfile>cfile   foriin${cfile}   do   x09echo$i   done   7.我仿照了个数据,请参考脚本和结果:   [u@H/billing/user/xufc/project]$cat1.txt   班级数学语文   A2090   A3080   A4060   B4050   B6040   C9030   C8070   C7040   C6030   [u@H/billing/user/xufc/project]$./statistic.sh   班级数学语文   A3076.6667   B5045   C7542.5   [u@H/billing/user/xufc/project]$catstatistic.sh   #!/usr/bin/ksh   #输出文件头   sed-n'1p'1.txt>outfile   #计算出班级   ban=`sed-n'2,$p'1.txt|cut-d""-f1|sort-u`   foriin${ban}   do   grep$i1.txt>tmpfile   #列统计   awk'{count=count+1;sum=sum+$2;sum2=sum2+$3}END{print$1"t"sum/count"t"sum2/count}'tmpfile>>outfile   done   #把结果打印到屏幕上面   catoutfile   [u@H/billing/user/xufc/project]$
最新更新
PC端 | 移动端 | mip端
字典翻译(zidianfy.com)汇总了汉语字典,新华字典,成语字典,组词,词语,在线查字典,中文字典,英汉字典,在线字典,康熙字典等等,是学生查询学习资料的好帮手,是老师教学的好助手。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
电话:  邮箱:
Copyright©2009-2021 字典翻译 zidianfy.com 版权所有 闽ICP备2022014709号-7
lyric 頭條新聞