对于我正在编写的程序,我需要从文件中读取一个值。当我这样做时,我会以(x, y)
的形式获得一个值。我需要创建一个分割这些内容的脚本,因此$x
是x value
而$y
是y value
。
然后,我需要检查一下。例如,检查$x
和$x-max
之间是否$x-min
,$x-max
和$x-min
是否为整数。
答案 0 :(得分:3)
将字符串拆分为两个数字:
$ foo="(506,-664)"
$ declare -a bar=${foo//,/ }
$ for integer in ${bar[@]}
> do
> echo "$integer"
> done
506
-664
答案 1 :(得分:1)
除非我把这一切都搞错了,否则我想你只需要处理字符串并派生数字组件。只需扫描字符串,直到“,”字符(对于x)然后从逗号后的第一个字符扫描到y的结尾。
答案 2 :(得分:0)
经过大量的搜索,我终于找到了答案。我想我看起来不够努力。对于遇到类似问题的人,代码是:
如果bar.txt包含(x,y),
$ cat /foo/bar.txt | tr -d“()”| sed's /,/ / g'| cut -d“” - f1 X $ cat /foo/bar.txt | tr -d“()”| sed's /,/ / g'| cut -d“” - f2 ÿ
我确信这样做的方式要少得多,但这让我得到了我需要的结果。