USBドライブにテキストを保存するときに猫がぶら下がらないようにするにはどうすればよいですか?

USBドライブにテキストを保存するときに猫がぶら下がらないようにするにはどうすればよいですか?

警告:コンテンツのないドライブ(/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/sdbheadcatcat私はこれが良いアイデアかどうか尋ねているわけではありません(そうではありません)。ドライブをフォーマットしてテキストファイルを使用できることはよく知っていますが、なぜ期待どおりにならないのか疑問に思います。

私は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で何も変更しません。

関連情報