내가 ls
볼 때 그것은 많은 파일이 들어있는 디렉토리입니다. 하지만 ls -l
이렇게 하면 디렉토리가 아닌 심볼릭 링크입니다. 무슨 일이 일어나고 있는 걸까요? 어떻게 그게 가능할까요?
$ ls /sys/class/net/enp0s20u1/device/driver/module
coresize holders initstate refcnt srcversion uevent
drivers initsize notes sections taint
$
$ ls -l /sys/class/net/enp0s20u1/device/driver/module
lrwxrwxrwx 1 root root 0 Jun 13 05:24 /sys/class/net/enp0s20u1/device/driver/module -> ../../../../module/cdc_ether
$
$ readlink /sys/class/net/enp0s20u1/device/driver/module
../../../../module/cdc_ether
$
$ ls `readlink /sys/class/net/enp0s20u1/device/driver/module`
ls: cannot access '../../../../module/cdc_ether': No such file or directory
답변1
링크는 상대적이므로 마지막 명령이 작동하려면 상위 디렉터리로 변경해야 합니다.
cd /sys/class/net/enp0s20u1/device/driver
ls `readlink module`
또는 readlink
링크의 정규화를 요구할 수 있습니다.
ls `readlink -e /sys/class/net/enp0s20u1/device/driver/module`