Software Development Kit (SDK) and API Discussions

Highlighted

Powershell command/script to display lun name only (without full path)? (Get-NaLUN)

Our customer (running Ontap 9.7) has a need to obtain output that displays LUN names only, however when using the host utilities kit  (v7.1)they see that the output won't show just the LUN name, but instead includes the entire path to the LUN.

 

For Linux, we have a workaround for the 'sanlun lun show' command by using the following command to extract the LUN names:

sanlun lun show | grep vol | awk '{print $2}' | cut -d '/' -f 4

 

Trying to figure out a similar workaround for them for Windows, possibly using the Netapp Powershell toolkit and the 'Get-NaLUN' command. Anyone out there have thoughts on how to script this to make it viable?

 

 

2 REPLIES 2
Highlighted

Re: Powershell command/script to display lun name only (without full path)? (Get-NaLUN)

Using the NetApp PowerShell Toolkit...hope this helps...

 

FYI - ONTAP 9.7 would use the "-Nc*" cmdlets - not the "-Na*". 

 

 

Connect-NcController {clusterip}

$luns = (Get-NcLun).Path

 foreach ( $lun IN $luns ) {
     $lun_path = $lun.Split("/")
     $lun_name = $lun_path[$lun_path.count-1]
     $lun_name
}

 

 

Highlighted

Re: Powershell command/script to display lun name only (without full path)? (Get-NaLUN)

Regex to the rescue! 

 

$Luns = Get-NcLun
foreach ($lun in $luns) { $lun.Path -replace '(?s)^.*\/', '' }
Check out the KB!
Knowledge Base
All Community Forums