下に改行とテキスト行を追加してください。 - 1行、1段落、コードスニペットで

下に改行とテキスト行を追加してください。 - 1行、1段落、コードスニペットで

改行文字と次のテキスト行、1行、1段落、またはコードブロックとして表示されます。

私が知っている1行と複数の段落の方法は次のとおりです。

sudo bash -c "echo '' >> /etc/bash.bashrc" && sudo bash -c "echo 'alias www=\"cd /var/www/html\"' >> /etc/bash.bashrc"

これは1行ですが、1つの段落ではありません(&&a必要)。

一方、他の方法では、ここのドキュメント単一の段落(いいえ&&)ですが、複数行があるため、1行、単一の段落方法を探しています。知っていることがありますか?

答え1

printf '\nalias www="cd /var/www/html"\n' | sudo tee -a /etc/bashrc

printf.を含むCスタイルのバックスラッシュエスケープを解釈します\ntee -a追加する指定されたファイルを開き、受信した入力をファイルに書き込みます。

これを既存に適用することもできますbash -c

sudo bash -c "printf '\\nalias www=\"cd /var/www/html\"\\n' >> /etc/bashrc"

本当に避けたい場合は、トップレベルのシェル演算子を使用しません。

答え2

以下は、これを使用して動作させるいくつかの冗談ですsudo

printf '%s\n' a '' 'alias www="cd /var/www/html"' . ,p q | ed -s /etc/bash.bashrc

ここのような文字列:

ed -s /etc/bash.bashrc <<< $'a\n\nalias www="cd /var/www/html"\n.\n,p\nq'

内部編集,pに置き換えるw

sed -e '${G;G;s|$|alias www="cd /var/www/html"|' -e'}' /etc/bash.bashrc

-ignu sed)または-i ''()を追加するとbsd sedすぐに編集できます。

cat <<< $'\nalias www="cd /var/www/html"' >> /etc/bash.bashrc

関連情報