shell 练习题(1)

1.求2个数之和

#!/bin/bash
echo $(($1+$2))

2.计算1-100的和

#! /bin/sh
a=0
sum=0
while [ 0 ];do
  sum=$(($sum+$a))
  a=$(($a+1))
  if [ $a -eq 101 ];then
    break
  fi
done
echo $sum

3.将一目录下所有的文件的扩展名改为bak

#!/bin/bash
dir=~/shell
for file in $dir/*
do
   base=${file%.*}
   mv $file ${base}.sh
done

4.编译当前目录下的所有.c文件:

5.打印root可以使用可执行文件数,处理结果: root's bins: 2306

6.打印当前sshd的端口和进程id,处理结果: sshd Port&&pid: 22 5412

7.输出本机创建20000个目录所用的时间,处理结果:

real    0m3.367s
user    0m0.066s
sys     0m1.925s

8.打印本机的交换分区大小,处理结果: Swap:1024M

9.文本分析,取出/etc/password中shell出现的次数

10.文件整理,employee文件中记录了工号和姓名,(提示join)

employee.txt:
    100 Jason Smith 
    200 John Doe 
    300 Sanjay Gupta 
    400 Ashok Sharma 
    bonus文件中记录工号和工资
bonus.txt:
    100 $5,000 
    200 $500 
    300 $3,000 
    400 $1,250 
要求把两个文件合并并输出如下,处理结果:
    400 ashok sharma $1,250
    100 jason smith  $5,000
    200 john doe  $500
    300 sanjay gupta  $3,000

(答案后续完善)

猜你喜欢

转载自blog.csdn.net/weixin_38280090/article/details/82021940