加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

使用sed只获取所有参数中的数字到bash脚本

发布时间:2020-12-14 00:54:29 所属栏目:Linux 来源:网络整理
导读:我需要帮助 我有脚本 #!/bin/bashNUMBER=$(echo "$1" | sed 's/[^0-9]*//g') echo $NUMBER ./test.sh tas1 tefst2 thgst3 ynft4 jhuf5 hjh6 jhd7 1 只返回1但我需要它1234567 解决方法 你只得到“1”的原因是$1只是第一个参数.使用“$*”获取包含所有参数的
我需要帮助

我有脚本

#!/bin/bash
NUMBER=$(echo "$1" | sed 's/[^0-9]*//g')  
echo $NUMBER
./test.sh tas1 tefst2 thgst3 ynft4 jhuf5 hjh6 jhd7   
1

只返回1但我需要它1234567

解决方法

你只得到“1”的原因是$1只是第一个参数.使用“$*”获取包含所有参数的单个字符串,以空格分隔(默认情况下).

您也可以使用bash变量替换来执行此操作:

params="$*"
echo "${params//[^[:digit:]]/}"

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读