python - bash脚本将整数作为参数并添加它们
问题描述
所以我在这里有这个代码:
#!/bin/bash
sum=0
for i;
do
if [ "$i" -ge 0 ]
then
sum=$((sum + i))
else
sum=$((sum + (i * -1)))
fi
done
echo $sum
所以用户输入 blin.sh 1 3 2 5 -5 -8,程序应该取所有的整数,如果是负数,则将它们设为正数,然后回显总和。但是我的 bash 代码由于某种科学未知的原因只回显了 0。
解决方案
这是您的脚本的示例。
#!/bin/bash
sum=0
for i ; do
if [ "$i" -ge 0 ]
then
sum=$((sum + i))
else
sum=$((sum + (i * -1)))
fi
done
echo $sum
脚本的名称是foo.sh
,现在使用参数执行该脚本。
./foo.sh 1 3 2 5 -5 -8
输出
24
使用sh
sh ./foo.sh 1 3 2 5 -5 -8
输出
24
使用dash
dash ./foo.sh 1 3 2 5 -5 -8
输出
24
使用zsh
zsh ./foo.sh 1 3 2 5 -5 -8
输出
24
我在那里看不到任何错误。
推荐阅读
- javascript - 编写一个函数,输入一个句子,输出一个排序好的句子
- javascript - 为什么在外部系统的 javascript 中会出现额外的反斜杠?
- python - 迭代地添加计算列,然后只是将新数据添加到 Pandas 数据框(python 3.7.1)
- neural-network - 阅读包含手写文本和键入文本的文件的最佳方法是什么?
- android - 单击按钮时Android会录制语音
- javascript - 使用数据库中的数据创建一个文本字段数组,并使用字段中的值进行计算
- wordpress - 如何从 json 对象中获取图像标签 src 值
- sql-server - SQL Server 多线程 SELECT 和 DELETE 语句
- perl - 为什么通过 Perl Socket->send() 的 sendto() 会忽略对等地址?
- android - 如何将json响应添加到分段recyclerview android