On Sun, Jan 25, 2026 at 11:54:37 -0700, [email protected] wrote:
> The drive isn't formatted

What?

> and has a UUID such as 
> 2026-01-19-03-28-45-00. Shorter than a UUID for a file system.

This looks like a timestamp.

> OK in a simple test.  Suggestions always welcome.  Something may be 
> more efficient  than the long pipeline.
> lsblk --nodeps -o name,serial | grep -F -- "$destination" | cut -d ' ' -f1 

It would help if we knew what the output looks like.  On my system:

hobbit:~$ sudo lsblk --nodeps -o name,serial
[sudo] password for greg: 
NAME    SERIAL
nvme0n1 UPJQD01ZTJ03L4

So... you *have* the serial number (somehow) and you *want* the "name"
field?  The obvious way would be to use awk:

    lsblk --nodeps -o name,serial |
        awk -v serial="$serial" '$2 == serial {print $1}'

On my system:

hobbit:~$ serial=UPJQD01ZTJ03L4
hobbit:~$ sudo lsblk --nodeps -o name,serial | awk -v serial="$serial" '$2 == 
serial {print $1}'
nvme0n1

awk -v isn't 100% safe with all inputs, but if your serial number is
reasonable (alphanumeric, maybe with some basic punctuation, but no
backslashes or control characters) it should be OK.

Reply via email to