2
Linuxシステムで非対話的にハイバネーションを有効にするためのbashスクリプトを書いています。この目的のために、しばらくの間、スラッシュを含むシェル変数を、その行にある引用符の中に挿入する必要があります。grubにsedでカーネルパラメータを追加する
このように編集されたルックスをbにファイルの関連部分:
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""
私はこれにそれを変更する必要があります。
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet resume=/dev/disk/by-partuuid/c5a552c2-fe8f-423a-9037-c35bf090d9c3"
GRUB_CMDLINE_LINUX=""
追加パラメータはシェル変数によって提供されます。私が目指していた
sed -i '\*^GRUB_CMDLINE_LINUX_DEFAULT* s*"$* '"$(grub_resume_boot_option)"'"*' /etc/default/grub
ロジックた:GRUB_CMDLINE_LINUX_DEFAULTを「パターンで始まる行を探し、 『』、および最後に取って代わる」与えられたパターンで
は、私はこれを試してみました。拡張変数のスラッシュを保存するには、区切り記号として*を使用してください。 "ただし、行の最後に空白があるとコマンドが失敗します。末尾にスペースを入れない方法はありますか?アカウントへのラインも
、これまでよりシンプルまたは読みやすい解決策がある場合、私は非常に興味がある
「resume =/dev/disk/by-partuuid/c5a ....」の値はどのようにして決められますか? – shellter