Какова команда для нахождения точки монтирования карты памяти USB или пути?

Я должен смочь получить просто точку монтирования карты памяти USB или путь. Действительно ли это - команда для этого? lsblk -r | grep usb Я выполнил ту команду, и она возвращается со следующим. sda1 /media/usb0 Я просто хочу точку монтирования или путь к карте памяти.

1
задан 15 March 2017 в 18:27

2 ответа

Я придумал один для команды lsblk. Это использует опции ТОЧКИ МОНТИРОВАНИЯ и ЗАМЕНЫ В ГОРЯЧЕМ РЕЖИМЕ, чтобы помочь определить. ЗАМЕНИТЕ В ГОРЯЧЕМ РЕЖИМЕ возвращает 1, если диск является съемным как Карта памяти. диски типа sr0 съемные / замена в горячем режиме, но это - CD/DVD-приводы. И я также останавливаю циклические устройства, так как они показывают, что они съемные / замена в горячем режиме также.

команда, которую я придумал, следующая:

lsblk -o NAME,HOTPLUG,MOUNTPOINT | grep -w 1 | grep -vE "sr|loop" | awk '{print $3}'

, Который может привести к следующим результатам, поскольку у меня есть Карта памяти в.

terrance@terrance-ubuntu:~$ lsblk -o NAME,HOTPLUG,MOUNTPOINT | grep -w 1 | grep -vE "sr|loop" | awk '{print $3}'

/media/terrance/E627-3C44

, Который является точной точкой монтирования моей включенной Карты памяти.

ПРИМЕЧАНИЕ: выглядит, как будто Ubuntu 14.04 не могла бы использовать те же опции для lsblk, таким образом, можно использовать команду с RM вместо HOTPLUG:

lsblk -o NAME,RM,MOUNTPOINT | grep -w 1 | grep -vE "sr|loop" | awk '{print $3}'

Или , можно использовать эти TRAN тип, я протестировал в 16,04, который является device transport type. Дает другой вывод, который мог бы быть легче к сценарию вокруг.

lsblk -o NAME,TRAN,MOUNTPOINT

, Который производит вывод как это:

terrance@terrance-ubuntu:~$ lsblk -o NAME,TRAN,MOUNTPOINT
NAME   TRAN   MOUNTPOINT
loop1         /snap/canonical-livepatch/17
sdb    usb    
└─sdb1        /media/terrance/E627-3C44
loop4         /snap/core/1441
sr0    sata   
loop2         /snap/core/1287
loop0         /snap/canonical-livepatch/21
sda    sata   
├─sda2        
├─sda5        [SWAP]
└─sda1        /
loop3         /snap/core/1337

, Так как MOINTPOINT перечислен на следующей строке после usb, мы будем использовать grep -A 1 для захвата следующей строки и использования awk '{print $2}' для печати второго столбца вывода на той строке:

terrance@terrance-ubuntu:~$ lsblk -o NAME,TRAN,MOUNTPOINT | grep -A 1 -w usb | grep -v usb | awk '{print $2}'
/media/terrance/E627-3C44

Hope это помогает!

4
ответ дан 3 December 2019 в 06:54

Тип:

df # показывает точку монтирования для всех известных устройств

В Вашем случае, как который это будет что-то:

/media/sr0

/media/usb0

я НЕ ожидал бы, что это будет sda1, который обычно является загрузочным диском

0
ответ дан 3 December 2019 в 06:54

Другие вопросы по тегам:

Похожие вопросы: