728x90
쉘 배열문
배열 생성 / 추가
BASH
#!/bin/bash
# 배열의 크기 지정없이 배열 변수 선언
# 굳이 'declare -a' 명령으로 선언하지 않아도 바로 배열 변수 사용 가능함
declare -a array
arr=("test1" "test2" "test3") # 배열 선언 및 지정
echo ${arr[0]} # test1
# 기존 배열에 1개의 배열 값 추가 3가지 방법
arr[3]="test4"
arr+=("test5")
arr[${#arr[@]}]="test6" # 배열 길이를 인덱스로 사용해 push
echo ${arr[@]} # arr의 모든 데이터 출력
echo ${arr[*]} # arr의 모든 데이터 출력
echo ${#arr[@]} # arr 배열 길이 출력
echo ${arr[@]:2:3} # 2부터 3개의 요소
$ ./script.sh
test1
test1 test2 test3 test4 test5 test6
test1 test2 test3 test4 test5 test6
6
test3 test4 test5
리눅스 쉘은 1차원 배열만 지원한다.
배열 원소 삭제
/를 사용해 해당 문자열 부분이 있으면 삭제 할 수 있다.
다만 unset을 이용해 삭제를 권고하는 편이다.
arr=(1 2 3)
remove_element=(3)
arr=( "${arr[@]/$remove_element}" ) # 배열 1 2 3 에서 / 3을 없앰
echo ${arr[@]} # > 1 2
Copy
BASH
arr=("abc" "def" "defghi")
unset arr[1] # 배열 특정 인덱스 요소 삭제
echo ${arr[@]} > # abc defghi
728x90
'Linux > 쉘스크립트' 카테고리의 다른 글
쉘스크립트 예제 (2) | 2023.02.06 |
---|---|
(shell script) 문자열 패턴 비교 (0) | 2023.02.05 |
쉘 조건문 - if문 (2) | 2023.02.01 |
let 연산자와 $(( )) 연산자 예제 (0) | 2023.01.31 |
expr 연산자 예제 (0) | 2023.01.30 |