배열

Category
아이템: 
포스트 갯수9

리눅스 bash 스크립트에서 연관 배열의 인덱스(index)/키(key) 출력하기

By 반달가면 | 2018년 10월 1일 | 
우선 리눅스 bash 스크립트에서 연관 배열(associative array) 사용에 대한 기본적인 내용도 이전 게시물을 참고하자. 여기로 배열을 정의해서 사용할 때 배열의 인덱스(index) 또는 키(key)를 확인해야 할 경우가 있다. 일반적인 배열은 인덱스를 수자로 사용하므로 굳이 인덱스를 별도로 확인할 일이 별로 없겠지만, 문자열을 인덱스/키로 사용하는 연관 배열의 경우에는 좀 다를 수 있다. 아래의 예시를 보자. # 변수 arr_x를 연관 배열로 선언 declare -A arr_x # 값 할당 arr_x[abc]=10 arr_x[def]=5 arr_x[xyz]=0 # 인덱스 abc에 저장된 내용 출력 echo "${arr_x[abc]}" 10 배열의 인덱스

[bash: grep] 파일에 저장된 여러개의 검색어를 포함 또는 제외한 내용 출력하기

By 반달가면 | 2018년 8월 7일 | 
몇개의 문자열에 대한 검색은 기본적인 grep 명령으로 그 자리에서 작업을 해도 큰 문제가 없을 것이다.(grep을 이용한 다중 문자열 검색은 이전 게시물을 참고하자. 여기로) # my_data.txt에서 문자열 abc 또는 123이 포함된 행 출력 cat my_data.txt | grep "abc\|123" 그러나, 꽤 많은 검색어가 있고 이 검색어들을 제외한 나머지 내용을 찾고자 할 때는 문제가 좀 복잡해 진다. 예를 들어 keyword.txt 파일에 10개 이상의 검색어가 저장되어 있고, my_data.txt 파일에서 이 검색어를 포함 또는 제외한 내용을 출력해야 하는 경우다. 일일이 수작업으로 확인하기 검색해야할 문자열이 너무 많다. 이럴 경우엔 배열(array)을 이용해서 검색어를

[bash: ((] 연관 배열(associative array)에 저장된 정수 계산

By 반달가면 | 2018년 1월 8일 | 
간혹 실수하는 부분이 있어서 정리해 두기로. 리눅스 bash 스크립트에서의 정수 계산은 이전 게시물을 참고하자. 여기로 리눅스 bash 스크립트에서의 배열(array) 활용은 여기로, 연관 배열(associative array) 활용은 여기로. bash에서 기본적인 정수 계산은 이중 괄호를 사용한다. # 정수 계산 예시 x=3 y=5 echo $((x+y)) 8 배열(array)이라고 특별히 달라질 것은 없어 보인다. # 배열에 저장된 정수 계산 예시 a[0]=3 a[1]=5 echo $((a[0]+a[1])) 8 # 배열 인덱스에 변수 사용 a[0]=3 a[1]=5 x=0 y=1 echo $((a[x]+a[y])) 8 echo $((a[$x

리눅스 bash 스크립트에서 연관 배열(associative array) 사용하기

By 반달가면 | 2017년 12월 18일 | 
통상적인 배열(array)에 대한 내용은 이전 게시물을 참고하자. 여기로 리눅스 bash 스크립트에서 연관 배열(associative array)을 사용하는 방법이다. 연관 배열은 인덱스를 수자로 사용하지 않고 문자열을 사용할 수 있다. 변수를 연관 배열로 사용하려면 해당 변수가 연관 배열임을 미리 선언해 주어야 한다. declare 명령으로 선언하면서 -A 옵션으로 연관 배열임을 지정해야 한다. # 변수 arr_test를 연관 배열로 선언 declare -A arr_test 이제 인덱스를 문자열로 사용할 수 있다. 아래의 예시를 보자. # 배열 값 할당 arr_test[abc]=0 arr_test[def]=1 # 배열에 저장된 내용 출력 echo ${arr_test[ab