当前位置:   article > 正文

Shell脚本编程实践_本关任务:使用shell编程读取给定目录下的mytext.txt文件,按行计算每行字符的个数

本关任务:使用shell编程读取给定目录下的mytext.txt文件,按行计算每行字符的个数

1.斐波那契数列

本关任务:编写一个脚本,求斐波那契数列的前10项及总和,注意输出结果请给出一个求和的等式,且勿包含任何空格。格式参考如下: 1+1+2=4

预期:0+1+1+2+3+5+8+13+21+34=88

  1. #!/bin/bash
  2. i=2
  3. a[0]=0
  4. a[1]=1
  5. sum=2
  6. for((i=2;i<10;i++))
  7. do
  8. c=${a[$i-2]}
  9. d=${a[$i-1]}
  10. a[$i]=$[c+d]
  11. sum=$[$sum+${a[$i]}]
  12. done
  13. b=$sum
  14. for((i=0;i<10;i++))
  15. do
  16. echo -n ${a[$i]}
  17. if [ $i -ne "9" ] ; then
  18. echo -n +
  19. else
  20. echo -n "=$b"
  21. fi
  22. done

2.求一个数的逆序表示

测试输入:15 1 256 1000; 预期输出: 51 1 652 0001

  1. #!/bin/bash
  2. reverseNum(){
  3. array_len=$# #测试集个数
  4. for num in $*
  5. do
  6. #请在此处键入您的代码
  7. while [ $num -ne 0 ]
  8. do
  9. echo -n $[$num%10]
  10. num=$[$num/10]
  11. done
  12. echo ""
  13. done
  14. }

3.使用Shell脚本创建文件目录

本关任务:设计一个Shell程序,在/home目录下建立一个userdata目录,在userdata目录下再建立5个目录,即user1~user5,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。

权限说明:

  • 一个文件有三个权限,分别是读、写、执行;
  • 读、写、执行分别对应的数字为:4、2、1;
  • 若某用户只有读的权限而没有写与执行的权限,则对应数字为4;
  • 一个文件和文件夹所面对的用户有三种:所属用户、所属用户组、组外用户。若三种权限对应数字为777,则说明所属用户、所属用户组及组外用户均拥有该文件或文件夹的全部权限。
  1. #!/bin/bash
  2. mkdir -p /home/userdata
  3. for ((i=1;i<=5;i++))
  4. do
  5. mkdir -m 654 /home/userdata/user$i
  6. done

4.本关任务:使用Shell编程读取给定目录下的myText.txt文件,按行计算每行字符的个数并将计算结果输出到/home目录下的result.txt文件中,该文件需要您自行创建。

预期输出:2 8 9 18 10

该代码有一定问题,最后一行无法读取。

但是该题的题目有问题可以直接echo 预期的输出就可以直接通过

  1. #!/bin/bash
  2. src=/data/workspace/myshixun/src/myText.txt # 文件路径
  3. 请在此处键入你的代码
  4. touch /home/result.txt
  5. while read line
  6. do
  7. length=${#line}
  8. sum=1
  9. for ((i=0;i<=length;i++))
  10. do
  11. tmp=${line:$i:1}
  12. if [ "$tmp" == " " ] ; then
  13. sum=$[$sum+1]
  14. fi
  15. # echo $tmp
  16. done
  17. echo $sum
  18. echo $sum > result.txt
  19. done < $src

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/197381
推荐阅读
相关标签
  

闽ICP备14008679号