아래에서 어레이 이름을 얻는 방법은 무엇입니까?
config에서 어레이 이름 가져 오기 :
jobcfgUniqName=`echo ${config_data} | awk -F "#" '{print $3}'`
그것의 배열 만들기 :
for ((xx = 0; xx <= ${#joblognameSearch[@]}; xx++))
do
print $joblognameSearch[$xx]
eval ($jobcfgUniqName)[$xx]=`grep -B 3 -i error $joblogPath/$joblognameSearch[$xx]`
print jobcfgUniqName : ${jobcfgUniqName}
done
이 줄은 여러 가지 방법으로 변경하려고 시도했지만 작동하지 않았습니다.
eval ($jobcfgUniqName)[$xx]
declare
BASH 게시판을 사용하여 다음 과 같이 평가판을 대체 할 수 있습니다 .
declare arr_"$jobcfgUniqName"[$xx]=`grep -B 3 -i error $joblogPath/$joblognameSearch[$xx]`
이제 접두사 arr_
와 일부 변수 이름을 사용하여 동적 배열을 만듭니다 $jobcfgUniqName
.
# set the array
s='abc'
declare arr_"$s"[0]='foo'
declare arr_"$s"[1]='bar'
# retrieve the values
v1=arr_"$s"[0]
v2=arr_"$s"[1]
echo "${!v1}"
foo
echo "${!v2}"
bar
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다