警告:コンテンツのないドライブ(
/dev/sdb
)でこのコマンドを使用しました。重要な内容を含むドライブでは、この操作を試みないでください。
私はいくつかを試して、次の作品を見つけました。
$ printf 'hi\n' | sudo tee /dev/sdb
hi
$ sudo head -n 1 /dev/sdb
hi
$
整えられた。これが私が混乱しているところです。cat
(最初のコマンドは同じで、2番目のコマンドは)に置き換えました。sudo cat /dev/sdb
印刷されたhi
後、実行Ctrl+はC停止しませんでした。
cat
最後にnull()文字を追加する必要があるかもしれません。だから()を再\0
試行しましたが、以前と同じように動作しましたが、まだ中断されました。 USBドライブに直接書き込むときの中断を防ぐにはどうすればよいですか?printf 'hi\n\0' | sudo tee /dev/sdb
head
cat
cat
私はこれが良いアイデアかどうか尋ねているわけではありません(そうではありません)。ドライブをフォーマットしてテキストファイルを使用できることはよく知っていますが、なぜ期待どおりにならないのか疑問に思います。
私は2GBのフラッシュドライブ(/dev/sdb
)を持つDebian 11を使用しています。
答え1
printf 'hi\n' | sudo tee /dev/sdb
標準入力(パイプから)を標準出力にコピーし、次にコピーします。/dev/sdb
printf 'hi\n' | sudo cat /dev/sdb
/dev/sdb
標準出力にコピーされます。パイプの出力は読み取られませんcat
。
したがってcat
、停止するのではなく、ディスクの内容全体を端末にコピーするのに時間がかかります。パイプは、最初の引数が入力であることを/dev/sdb
知っているので、catで何も変更しません。