
所以我有一個名為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 中數組支援的差異。