2017-09-16 81 views
0

我想使用USB存储器来存储电源shell脚本,我将在不同的PC上使用这些脚本。其中一些脚本包含USB棒本身的路径。例如,如果U盘总是分配盘符K:我的脚本文件可能包含以下行:USB棒上的Power Shell脚本:如何确定USB驱动器号?

start notepad K:/my/path/mytext.txt

制作电源外壳打开U盘文件mytext.txt,通过notepad手段。

问题是分配给USB存储棒的驱动器号从PC变为PC。我如何使用电源脚本命令来查找分配给我的U盘的驱动器号?

我想这样的:通过使用<some command>我可以分配给我的U盘盘符存储到一个变量$myvar

$myvar = <some command>

,然后在路径中使用$myvar,而不是驱动器盘符的我指定。如果是这样,打开我的文本文件,上面的脚本线将是这个样子:

start notepad $myvar/my/path/mytext.txt

这是可能的,和最新的姓名和电话,以这样的命令?

在此先感谢所有有用的建议。

+0

'$ PSScriptRoot' – PetSerAl

+0

@PetSerAl感谢您的快速响应。我试着'开始记事本$ PSScriptRoot \ notes \ mytext.txt',但是我收到错误信息'系统找不到指定的路径'。 '$ PSScriptRoot'是一个预定义的变量,还是我必须声明它? – myotis

+0

@TessellatingHeckler谢谢!这使得代码的功能:) – myotis

回答

0

(Get-Location).Drive.Name将给你的工作目录的驱动器号。

但是工作目录可能不是脚本的位置。

如果您希望脚本找到您的USB驱动器,你知道你的闪存驱动器的标签,你可以做这样的事情:

(Get-WmiObject Win32_Volume -Filter "DriveType='2'" | 
    ?{$_.Label -eq 'SANDISK 16'}).DriveLetter 

更换“SANDISK 16”与您的驱动器标签。