임의 풀의 모든 vdev에 있는 디스크의 장치 이름이 필요한 스크립트를 작성 중입니다. (내 풀에 있는 vdev의 모든 장치는 디스크입니다.)
zpool list -v mypoolname
주로 내가 원하는 것 같습니다.
$ zpool list -v mypoolname
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
mypoolname 100G 90G 10.0G 90% 1.00x ONLINE -
mirror 100G 90G 10.0G -
devicename1 - - - -
devicename2 - - - -
그러나 어떤 출력 라인이 디스크인지 결정하는 유일한 확실한 방법은 라인 시작 부분에 4개의 공백이 있는지 확인하는 것입니다.
대체할 수 있는 더 좋고 스크립트에 안전한 명령이 있습니까?
답변1
zpool list -v -H -P
-v verbose
-P show full paths, not just the last component
-H script mode - no headings, fields separated by tab character
이것은 당신을 더 가깝게 만들 것입니다.