스크립트를 통해 수정하고 싶은 Grub 옵션 파일이 있습니다. 추가 부트로더 옵션을 추가하고 싶습니다.
이 파일은 시간이 지남에 따라 변경될 수 있으므로 이미지와 함께 제공되는 부트로더 옵션을 추가하여 향후 릴리스에 적용되는 파일을 만들고 싶습니다.
예를 들어 부트로더 파일에는 다음 콘텐츠가 포함됩니다.
# Set the recordfail timeout
GRUB_RECORDFAIL_TIMEOUT=0
# Do not wait on grub prompt
GRUB_TIMEOUT=0
# Set the default commandline
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0"
# Set the grub console type
GRUB_TERMINAL=console
GRUB_HIDDEN_TIMEOUT=0.1
GRUB_CMDLINE_LINUX_DEFAULT 줄에 추가하여 다음과 같이 만들고 싶습니다.
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0 cgroup_enable=memory swapaccount=1"
sed나 awk를 사용하여 이를 수행할 수 있는 방법이 있습니까? "GRUB_CMDLINE_LINUX_DEFAULT가 포함된 줄의 마지막 인용문 앞에 이것을 추가하세요."와 같은 것입니다.
미리 감사드립니다!
답변1
간단하게sed
:
sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="[^"]*/& cgroup_enable=memory swapaccount=1/' file
[^"]*
- 큰따옴표를 제외한 모든 문자와 일치합니다."
&
- 일치하는 문자열 전체(패턴 공간)