Bash:
YAML로 작업하기
방법:
Bash에서 YAML을 직접 다루기 위해서는 Bash가 YAML 파싱을 내장 지원하지 않기 때문에 약간의 재치가 필요합니다. 그러나 yq(경량이며 휴대가능한 커맨드라인 YAML 프로세서)와 같은 외부 도구를 사용하여 효율적으로 YAML 파일과 상호 작용할 수 있습니다. 몇 가지 일반적인 작업을 살펴봅시다:
yq 설치:
예시를 다루기 전에, yq가 설치되어 있는지 확인하세요. 보통 패키지 매니저에서 설치할 수 있습니다. 예를 들어, 우분투에서는:
sudo apt-get install yq또는 GitHub 저장소에서 직접 다운로드할 수 있습니다.
값을 읽기:
config.yaml이라는 파일이 있고 다음과 같은 내용이 있다고 가정해 보겠습니다:
database:
host: localhost
port: 5432
user:
name: admin
password: secret데이터베이스 호스트를 읽으려면 다음과 같이 yq를 사용할 수 있습니다:
yq e '.database.host' config.yaml샘플 출력:
localhost값을 업데이트하기:
config.yaml에서 사용자 이름을 업데이트하려면 -i (in-place) 옵션을 사용하여 yq eval 명령을 사용하세요:
yq e '.user.name = "newadmin"' -i config.yaml다음으로 변경 사항을 확인하세요:
yq e '.user.name' config.yaml샘플 출력:
newadmin새 요소 추가하기:
데이터베이스 섹션 아래에 새 필드 timeout처럼 새 요소를 추가하려면:
yq e '.database.timeout = 30' -i config.yaml파일의 내용을 확인하면 추가가 확인됩니다.
요소 삭제하기:
사용자 아래의 비밀번호를 제거하려면:
yq e 'del(.user.password)' -i config.yaml이 작업은 구성에서 비밀번호 필드를 제거할 것입니다.
기억하세요, yq는 매우 강력한 도구이며, YAML을 JSON으로 변환, 파일 병합, 그리고 더 복잡한 조작을 포함하여 많은 기능을 가지고 있습니다. 더 많은 탐구를 위해 yq 문서를 참조하세요.