그래서 정렬된 소수와 정수가 한 줄씩 나열되어 있는 sortedtime.txt라는 텍스트 파일이 있습니다.
12.6
13.7
...
154
1864
이 숫자를 읽고 행별로 1D 배열에 추가하려면 쉘 스크립트가 필요합니다. 이에 대한 내 코드는 다음과 같습니다.
with open('sortedtime.txt') as data:
timearray = data.readlines()
안타깝게도 코드를 실행하려고 하면 계속 오류가 발생합니다. 나중에 데이터의 CDF를 플롯하려면 이 숫자를 배열의 요소로 가질 수 있어야 합니다.
답변1
당신이 의미한다고 가정쉘 배열, 모든 쉘이 배열을 지원하는 것은 아닙니다. Bourne과 같은 쉘로 제한한다면 배열(시간순으로 정렬)은 ksh
, bash
및 지원됩니다. (제공해주신 코드는 코드처럼 보입니다.) 우리가 일반적으로 쉘이라고 부르는 것은 아닙니다.zsh
yash
python
python
그 중 부동 소수점 연산을 지원하는 유일한 쉘은 ksh93
, zsh
및 입니다 yash
.
세 가지 방법 모두에서 입력에 줄 바꿈, 공백 또는 탭으로 구분된 부동 소수점만 포함되어 있다고 가정하면 다음을 수행할 수 있습니다.
array=($(cat file))
그러나 배열 요소에 액세스하는 구문은 3에서 모두 다릅니다. 바라보다"어레이에 대한 테스트 셸 지원" 다양한 셸에서 배열 지원의 차이점을 이해합니다.