2015-01-12 3 views
1

KornShell에서 정수 배열을 정렬하는 방법. 이 링크는 KornShell Sort Array of Integers이지만 작동하지 않고 오류가 발생하는 것 같습니다.ksh에서 정수 배열을 정렬하는 방법 | Unix 쉘 스크립팅

코드 :

NUM_ARR[1]=-1 
NUM_ARR[2]=-2 
NUM_ARR[3]=-3 
NUM_ARR[4]=-4 
NUM_ARR[5]=-5 
NUM_ARR[6]=-6 
NUM_ARR[7]=-7 
for file in /home/fimsctl/datafiles/outbound/timelog/timelog_file_*.csv ; do 

    SORTED_NUM_ARR=`($(printf "%s\n" ${NUM_ARR[@]} | sort -n))` 
echo ${SORTED_NUM_ARR[*]} 
done 

출력 :

testb.ksh[118]: -7: not found 

답변

1

당신은 프로세스 대체와 sort를 사용할 수 있습니다! 당신이 저장처럼 당신이 지금까지 있었던

sort -n <(printf "%s\n" "${NUM_ARR[@]}") 
+0

.. 그것은이다 내 인생. 비록 그것이 질문들 중 가장 간단한 것이었을지라도 ... 고마워요. 백만 달러니까요. 왜 아직도'$ (printf "% s \ n"$ {NUM_ARR [@]} | sort -n)'이 작동 안함. – Sachin

+0

당신을 가장 환영합니다. 'printf "% s \ n" "$ {NUM_ARR [@]}"| sort -n'도 작동해야합니다. – anubhava