변수를 진정한 다차원 배열의 인덱스로 사용할 수 있습니까? 나는 시스코 구성 파일을 통해 실행되는 둔한 4.1.1 스크립트를 가지고 있고, 나는 보이는 배열을 만들려면 같은 :gawk 4 - 변수를 배열 인덱스로 사용
에서 myArray [Sitecode를] [switchname] Sitecode를하고 switchname은 파일 이름에서 가져온되는
스위치를 기준으로 여러 가지를 계산하기 위해 추가 인덱스가 필요합니다. 위의 두 인덱스의 경우 인덱스와 값을 동일한 변수로 설정하려고합니다. 종류
awk: cmd. line:6: (FILENAME=- FNR=1) fatal: attempt to use scalar `array["variable1"]' as an array
내가 :
#!/bin/bash
awk '{
var1="variable1"
var2="variable2"
array[var1]=var1
array[var1][var2]=var2
print array[var1][var2]
}'
내가이 오류 :
myarray[nyc01][switch01][Vlan100][192.168.100.1]
myarray[nyc01][switch01][Vlan101][192.168.101.1]
myarray[nyc01][switch02][Vlan200][192.168.200.1]
아래의 코드는 내가 뭘하려고 오전 보여처럼 그래서 결국 나는 보이는 배열을 가질 수있다 왜 일어나는 지 이해하십시오. 나는 var1과 var2를 스칼라 변수로 선언했다. 그러나 내가하려는 일에 대한 해결책이 있습니까?
배열 [var1] = var1 : 왼쪽 손 si de는 배열의 행 (또는 3D 배열이있는 경우 평면)이고 rhs는 단일 값입니다. 한 번에 전체 n-1 차원을 지정하려고합니까? – user1666959