먼저 ..., 유닉스
- 내가 가지고있는 'N'라인의 'N'양 파일의 양. 내가 아는 한 은 행 수가 짝수가 될 것입니다.
- 사용자가 원하는 파일을 선택합니다. 이것은
${selected_sets[@]}
이라는 배열에 저장됩니다. - 프로그램이 무작위로 선택된 '홀수 번호' 줄을 화면에 인쇄합니다. 선이 인쇄되면
- , 나는 그것의 대부분은 괜찮습니다 ... 다시 인쇄
싶지 않아,하지만 난 ${selected_sets[@]}
의 내용을 기반으로 문제가 만드는 배열을 데 ... I 나는 모든 잘못 내 구문을 :) 가지고 생각
for i in ${selected_sets[@]}
do
x=1
linecount=$(cat $desired_path/$i | wc -l) #get line count of every set
while [ $x -le $linecount ]
do ${i}[${#${i}[@]}]=$x
x=$(($x+2)) # only insert odd numbers up to max limit of linecount
done
done
문제는 내가 array[${#array[@]}]=$x
를 사용할 수 있지만 변수 이름을 사용하는 방법을 모르는 것을 알고 ${i}[${#${i}[@]}]=$x
입니다.
모든 아이디어가 가장 환영받을 것입니다 (저는 정말 곤란합니다) !!! 난 당신이 다음 해당 변수를 참조 할 방법 만 확실하지 해요 declare
명령
declare -a name=${#${i}[@]}
를 사용
왜 변수의 이름을 지정 하시겠습니까? 나중에 배열에 다시 액세스하려면 두 개의 하위 배열에 저장하면됩니다.이 배열은 for 루프 외부에서 선언 할 수 있습니다. –
저는 배쉬 어레이를 약 1 주간 사용했기 때문에 제 생각은 이것이 제가 원하는 것을 성취 할 수있는 가장 좋은 방법이라고 생각한다는 사실에 기초를 두었습니다 ... 이중으로 쓰여진 배열은 새로운 것입니다. 그들에게 책을주고 그들이 내가 원하는 것을 지켜 볼 것입니다. 머리를 주셔서 감사합니다! – beoliver
P.S. - 온라인 문서화에 대한 아이디어가 있습니까? – beoliver