マウントポイントからドライブのシリアル番号を取得するには?

マウントポイントからドライブのシリアル番号を取得するには?

lsblk -o NAME,SERIAL,MOUNTPOINT出力に以下が含まれている場合

sdb                                           X55MM4827123
└─sdb1
  └─luks-4d0dc651-9aa6-452d-9442-7b33d95f8427                /run/media/main/mydrive

X55MM4827123マウントポイント(この場合)を提供するときにシリアル番号(この場合)を取得するために使用できる単純なコンソール/ CLIコマンドは何ですか/run/media/main/mydrive

答えを使用する必要はありませんが、lsblk簡潔でなければならず、単純なbashスクリプトを使用することをお勧めします。

ベストアンサー1

次のオプションは、ヘッダーなしでディスクのシリアル番号を印刷します。lsblk -n -o SERIAL /dev/sda

オプションの説明はマンページにあります。

-n, --noheadings
Do not print a header line.

Serial:このオプションはコマンド出力からヘッダーを削除します。

-o, --output list
Specify which output columns to print. Use --help to get a list of all supported columns.

ディスクについて印刷する情報を選択してください。

シリーズを提供するのに十分です。残念ながら、lsblkシリアル番号はパーティションではなくディスクの属性なので、マウントポイントでは機能しません。見学するsynopsis

Synopsis

lsblk [options]
lsblk [options] device...

マウントポイントからパーティションを抽出し、ディスク情報を整理し、それを引数として提供するには多くの努力が必要ですlsblk。これで成功することができます。

mount| grep /run/media/main/mydrive | awk 'NR==1{print $1}'|sed 's/[0-9]*//g'

mountすべてのマウントポイントが一覧表示され、マウントポイントの行がフェッチgrepされ、awkパーティション列がフェッチされ、sedパーティションを表す番号が削除されます。要約すると、次のようになります。

lsblk -n -o SERIAL `mount| grep /run/media/main/mydrive | awk 'NR==1{print $1}'|sed 's/[0-9]*//g'`

おすすめ記事