[Linux] shell编程之求命令行中所有整数之和

前言

  复习shell编程知识,书中有此练习题,之前学习时便没有搞透彻,此次是非啃下不可。

  但是,摸索许久,却屡碰南墙,于是查阅网络博客,结果有让人比学不懂知识更让生气的是:博文遍地,净是抄袭!连个截图都没有变,15年的博文,19年的新博文中连截图和文字都没有变,同一篇博文被三个人抄袭,而且博文中的代码根本无法运行出正确的结果!悲夫,这便是国内知识产权上的抄袭之风甚矣,赤裸裸的盗贼!抄袭的人,与我们还是同行,我完全不能与这类人共事。

  故如续转载,请注明出处:https://www.cnblogs.com/johnnyzen/p/10527795.html,侵权必究,蟹蟹理解。

题目

  设计一个Shell脚本:求命令行上所有整数和。

源码

#!/bin/bashecho [$0]; #$0始终为文件名

echo [$0]; #$0始终为文件名

sum=0; #赋值等号左右不能含空格符
for i in $*
do
 # echo $i; #输出变量值
 sum=`expr $sum + $i`;
done

echo sum:$sum;

exit 0;

关键点

1.赋值等号的左右不能含空格符;

2.for/while循环从中依次取值

3.expr命令符(扩展:awk等)

4.的区别

 

Linux字符串拼接问题

[root@sdc01 ~]# echo `date "+%Y-%m-%d %H:%M:%S %A - 年月日:%F[空格:%n]时分秒:%T"`"@命令行拼接字符串"
2021-01-08 18:06:27 Friday - 年月日:2021-01-08[空格: ]时分秒:18:06:27@命令行拼接字符串


[root@sdc01 ~]# echo $(date "+%Y-%m-%d %H:%M:%S %A - 年月日:%F[空格:%n]时分秒:%T")"@变量拼接字符串"
2021-01-08 18:08:21 Friday - 年月日:2021-01-08[空格: ]时分秒:18:08:21@变量拼接字符串

  

推荐文献

[1] 

[2] shell编程控制结构:expr、let、for、while、until、shift、if、case、break、continue、函数、select

posted @ 2019-03-14 02:11  千千寰宇  阅读(2005)  评论(0编辑  收藏  举报