기본 콘텐츠로 건너뛰기

Bash 에서 줄 단위로 배열에 대입

Bash에서 여러 줄 데이터를 배열로 대입할 때마다 구글에 물어봤는데, 다시 찾기 귀찮아서 정리...

Bash 4.x 이상

# mapfile과 readarray는 정확히 동일한 명령이며, readarray는 mapfile은 별칭(alias)이다.

mapfile -t lines <<< ${multiline}

# 중간에 띄어 쓰기가 있을 경우, 아래와 같은 형태를 사용한다.
mapfile -t files < <(find . -type f)
for file in "${files[@]}"; do
  echo "${file}"
done

Bash 3.x 이하

IFS=$'\n' read -d '' -r -a lines <<< ${multilines}

댓글

이 블로그의 인기 게시물

Winget 해시 무시하기

가끔씩 Winget 에서 패키지를 다운로드 했을 때, "설치 관리자 해시가 일치하지 않습니다." 오류가 뜰 때가 있다. 보안 이슈가 있지만, 그냥 무시하고 싶을 때, 아래 순서로 무시해준다. 관리자 권한 winget settings --enable InstallerHashOverride 설치 winget install --ignore-security-hash --id NirSoft.NirCmd