免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1851 | 回复: 2

[系统管理] shell脚本问题 [复制链接]

论坛徽章:
0
发表于 2019-01-15 18:41 |显示全部楼层
function int_to_bin(){
int=$1
declare -a tmp_intTobin
local index=0
local tmp_index=0
while [ "$int" -ne "0" ];do
        y=$[$int/2]
        tmp_intTobin[index]=$(($int-$y*2))
        int=$[$int/2]
        let index++
done
# 取反高位
for ((tmp=$[${#tmp_intTobin[*]}-1];tmp>=0;tmp--));do
        intTobin[tmp_index]=${tmp_intTobin[$tmp]}
        let tmp_index++
done
        return "${intTobin[*]}"
}
int_to_bin 355

请问一下,调用这个函数的时候报参数太多,不知道怎么解决,请高手指点一下!

论坛徽章:
4
15-16赛季CBA联赛之青岛
日期:2018-07-09 14:17:2815-16赛季CBA联赛之八一
日期:2018-08-06 15:30:0515-16赛季CBA联赛之广东
日期:2018-08-09 09:11:2115-16赛季CBA联赛之佛山
日期:2019-02-14 09:26:31
发表于 2019-01-16 10:10 |显示全部楼层
送分题啊,shell 的return 只能是整型吧?str 或者 arr 直接 func 里 export,只是脚本语言,不是变成语言,没有这么规矩的 函数 return 要求
  1. #!/usr/bin/env bash
  2. SS() {
  3. aa=(1,2,3)
  4. return aa
  5. }

  6. KK() {
  7. bb='asdf'
  8. return $bb
  9. }

  10. PP() {
  11. cc=2
  12. return $cc
  13. }

  14. SS
  15. KK
  16. PP
复制代码

  1. [root@Master ~]# sh t.sh
  2. t.sh: line 4: return: aa: numeric argument required
  3. t.sh: line 9: return: asdf: numeric argument required
复制代码



论坛徽章:
0
发表于 2019-01-17 16:32 |显示全部楼层
回复 2# christmas1102


谢谢!还有什么其他好的方法没?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP