私はこれを使用してUSBフラッシュドライブを消去し、FATファイルシステムを再作成します。
dd if=/dev/zero of=/dev/sdb bs=1M #I don't need more advanced wiping
fdisk /dev/sdb
(a few keystrokes to select partition type, etc.)
mkfs.fat /dev/sdb1
何度も手動でキーを押す必要があるという事実が迷惑でした。介入なしにこれらすべてをどのようにして一段階で行うことができますか?それは次のとおりです。
dd if=/dev/zero of=/dev/sdb bs=1M && ??? &&& mkfs.fat /dev/sdb1
答え1
fdisk
ここでドキュメントの構文を使用すると、非対話型として使用できます。
fdisk /dev/sdb <<EOF
n
p
t
b
p
q
EOF
これは私が使った例に過ぎず、p
何もq
修正しませんでした。w
順序を確認して使用します。
空行は単独に対応しますEnter。ポイントは、このようにキーストロークを渡すことができるということです。
または、次の行(2つのEOF
-sの間)をファイルに書き込むこともできます(例:)fdisk.commands
。
fdisk /dev/sdb < fdisk.commands
またはファイルがない場合(コメントでRastapopoulosに感謝します):
fdisk /dev/sdb <<< $'n\np\n\n\n\nt\nb\np\nq'
他の方法:
printf '%s\n' "n" "p" "" "" "" "t" "b" "p" "q" | fdisk /dev/sdb
しかもsfdisk
。その構文がより適切であることがわかります。
答え2
@KamilMaciorowskiの答え(彼に完全に感謝します)に基づいて、これが私が使用したものです。
sudo dd if=/dev/zero of=/dev/sdb bs=1M && sudo fdisk /dev/sdb <<< $'n\np\n\n\n\nt\nb\np\nw\n' && sudo mkfs.fat /dev/sdb1