所以我有一个名为sortedtime.txt的文本文件,其中包含逐行列出的排序小数和整数:
12.6
13.7
...
154
1864
我需要一个 shell 脚本来读取这些数字并将它们逐行添加到一维数组中。我为此的代码如下:
with open('sortedtime.txt') as data:
timearray = data.readlines()
不幸的是,我在尝试执行代码时不断收到错误。我需要能够将这些数字作为数组中的元素,以便稍后绘制数据的 cdf。
答案1
假设你的意思是贝壳阵列,请注意,并非所有 shell 都支持数组。如果我们限制像 Bourne 这样的 shell,那么支持数组(按时间顺序)的有ksh
、bash
和。(你给的代码看起来像代码)并不是我们一般所说的shell。zsh
yash
python
python
其中,唯一支持浮点运算的 shell 是ksh93
、zsh
和yash
。
在所有 3 种方法中,假设输入仅包含由换行符、空格或制表符分隔的浮点数,您可以执行以下操作:
array=($(cat file))
不过,访问数组元素的语法在所有 3 个中都不同。看 ”测试 shell 对数组的支持" 了解不同 shell 中数组支持的差异。