sudo !!
Bashでエイリアスを設定しようとしています。 'を試しましたが、alias sbb='sudo !!
テキストとして解釈して !!
印刷します。
sudo: !!: command not found
二重引用符を使用すると、文字列自体の二重感嘆符が変わるため、機能しません。
これを行う方法はありますか?それとも別のエイリアスですか? `
ベストアンサー1
!!
入力すると bash によって拡張されます。エイリアス置換では拡張されません。
history
内蔵機能を使用して拡張できます。
alias sbb='sudo $(history -p !!)'
コマンドが単純なコマンド以上の場合(リダイレクトやパイプなど)、sudoでシェルを呼び出す必要があります。
alias sbb='sudo "$BASH" -c "$(history -p !!)"'