
Windows をマウントして変更できる CD またはフラッシュドライブ上の Linux から実行する bash スクリプトを作成しようとしていますが、どのパーティション/ドライブが Windows であるかを検出する方法がわかりません。
私の推測では、awk を使用して /dev 内の最大のものを検出するのが最善ですが、式をどのように記述すればよいのかわかりません。
答え1
パーティション ID が正しいと確信できる場合は、次の手順を実行します。
# fdisk -l 2>/dev/null | awk '/NTFS$/ {print $1}'
これにより、NTFS ボリュームのブロック デバイスが印刷されます。
答え2
df -T
を使用すると、すべてのパーティションとそのタイプを取得できます。次に、次のように、タイプが NTFS (または Windows パーティションがフォーマットされている形式、たとえば Fat32) のパーティションを検索します。
PARTITIONS=$(df -T | grep fat32 | awk '{print $1}')
次に、ループを使用してパーティションを調べ、パーティションに対して操作を実行できます。
より堅牢な解決策としては、潜在的なパーティションをマウントし、Windows
ルートにディレクトリなどがあるかどうかを確認することです。
それであなたの質問への答えになりましたか?