前のコマンドをすべて実行する前に入力をパイプして確認プロンプトを強制する*nixツールはありますか? Web ページにコマンドライン スニペットを置くことができるツールを検討していますが、コマンドを切り取って貼り付けたり、誤って CR/LF を貼り付けても、ターゲット コンピューターが破損しないようにするツールを検討しています。
以下は、「confirm」というツールがあり、devを「safedev」に置き換える簡単な例です。
head -c 32 /dev/urandom | sudo openssl enc -rc4 -nosalt -pass stdin -in /dev/zero -out /dev/safedev | confirm
この問題は、ブラウザでコマンドを切り取り、貼り付けてMBRを壊した経験から始まり、sdaをsdcに変更する機会が生じる前に誤ってCR / LFをつかんで実行を開始しました。デフォルトのOSを復元/再作成するには、MBRを再作成し、既存のパーティションにUbuntu Gnomeを再インストールする必要がありました。
このツールが存在しない場合、コマンドを実行する前に確認を強制するコマンドをWebページに提供する他の方法はありますか?たぶんこんなことはありませんか?
confirm && head -c 32 /dev/urandom | sudo openssl enc -rc4 -nosalt -pass stdin -in /dev/zero -out /dev/safedev
答え1
CRLFを含む端末にコピーしたテキストを貼り付けると、プレフィックス付きのコマンドは保存されません。終わりすべての牛が納屋を離れると、パイプはドアを閉めます。一部の端末エミュレータ(例:iTerm2OSX の場合) このような問題を軽減するために、CRLF の検出とブロックが最近追加されました。
埋め込みCRLFの問題を解決したら、次のようなものを偽にすることができます。
/bin/false && ( your commands here )
目的のアイテムがあるアイテムであることを確認したら、を削除できます/bin/false &&
。
答え2
答え3
〜のようにドゥブゴッティの答えしかし、ロケット科学は少ない。以下を入力してください#
。
#(ここにコマンドがあります)