반응형
Bash 스크립트에서 키-값 쌍을 만드는 방법이 있습니까?
Bash 스크립트를 사용하여 키 값 쌍의 사전을 만들려고합니다. 이 논리를 사용하려고합니다.
declare -d dictionary
defaults write "$dictionary" key -string "$value"
... 어디에 $dictionary
변수가 있지만 작동하지 않습니다.
Bash 스크립트에서 키-값 쌍을 만드는 방법이 있습니까?
bash 버전 4에서 연관 배열이 도입되었습니다.
declare -A arr
arr["key1"]=val1
arr+=( ["key2"]=val2 ["key3"]=val3 )
이제 arr 배열에는 세 개의 키 값 쌍이 포함됩니다. Bash는 정렬이나 팝업 등으로 할 수있는 작업이 상당히 제한되어 있습니다.
for key in ${!arr[@]}; do
echo ${key} ${arr[${key}]}
done
모든 키 값을 반복하고이를 에코합니다.
간단한 구분자를 사용할 수 있다면 매우 간단한 oneliner는 다음과 같습니다.
for i in a,b c_s,d ; do
KEY=${i%,*};
VAL=${i#*,};
echo $KEY" XX "$VAL;
done
이에는 i
문자와 같은 순서로 가득 "a,b"
하고 "c_s,d"
. 각각 공백으로 구분됩니다. 다음에는 매개 변수 대체 를 do
사용 하여 쉼표 앞 부분과 그 뒤 부분을 추출 합니다.,
영구 키 / 값 저장소의 경우 https://github.com/damphat/kv-bashkv-bash
에서 사용할 수있는 키 / 값 데이터베이스의 순수 bash 구현 인을 사용할 수 있습니다.
용법
git clone https://github.com/damphat/kv-bash
source kv-bash/kv-bash
영구 변수를 만들어보십시오.
kvset myName xyz
kvset myEmail xyz@example.com
#read the varible
kvget myEmail
#you can also use in another script with $(kvget keyname)
echo $(kvget myEmail)
참고 URL : https://stackoverflow.com/questions/14370133/is-there-a-way-to-create-key-value-pairs-in-bash-script
반응형
'IT TIP' 카테고리의 다른 글
UIView는 경계를 벗어날 때 자식 뷰를 숨 깁니다. (0) | 2020.11.19 |
---|---|
교리 2 + 부호없는 값 (0) | 2020.11.19 |
iOS 11에서 스크롤하지 않고 탐색 막대에 검색 막대 표시 (0) | 2020.11.19 |
Linux에서 memcpy 성능 저하 (0) | 2020.11.05 |
요청 된 리소스에 'Access-Control-Allow-Origin'헤더가 없습니다. AngularJS (0) | 2020.11.05 |