
Я пытаюсь написать bash-скрипт для запуска из Linux на CD или флэш-накопителе, который сможет монтировать Windows и вносить изменения, но я не знаю, как определить, какой раздел/диск принадлежит Windows.
Я бы предположил, что можно каким-то образом использовать awk для определения самого большого объекта в /dev, но я понятия не имею, как написать выражение.
решение1
Если вы уверены, что идентификаторы разделов верны:
# 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
каталог в корне.
Это отвечает на ваш вопрос?