how to see drives connected in linux code example

Example: list all hard drives linux

user@system:~$ fdisk -l
 Disk /dev/loop0: 7.5 MiB, 7811072 bytes, 15256 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes

 Disk /dev/loop1: 89.5 MiB, 93818880 bytes, 183240 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 
 Disk /dev/loop2: 4.9 MiB, 5148672 bytes, 10056 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 
 Disk /dev/loop3: 4.7 MiB, 4919296 bytes, 9608 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 
 Disk /dev/loop4: 89.5 MiB, 93835264 bytes, 183272 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 
 Disk /dev/loop5: 88.2 MiB, 92483584 bytes, 180632 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 
 Disk /dev/sda: 477 GiB, 512110190592 bytes, 1000215216 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 
 Disklabel type: gpt
 Disk identifier: 129F4EE6-2A54-4639-BFCA-2CC09DFC8566
 Device       Start        End   Sectors   Size Type
 /dev/sda1     2048    1050623   1048576   512M EFI System
 /dev/sda2  1050624 1000214527 999163904 476.4G Linux filesystem