如何在脚本中判断 PowerShell 是否以管理员权限运行?
我需要知道,因为我正在尝试运行一个需要能够打开受保护端口的程序。
如果上面有文档,我会接受。任何网络搜索“符号链接”“符号链接”“windows [10]”“powershell”都会返回除基本命令之外的所有内容。
即使是 powershell docs 站点也没有返回任何内容。这不可能吗?
我在 Windows 7 上使用 PowerShell。如何配置 PowerShell 使其仅在 shell 提示中显示当前文件夹名称(而不是完整路径)?
例如,C:\folder\directory\name>我想要name>.
在 MacOSX 中,有一个命令可以将命令的输出通过管道传输到剪贴板,以便将其粘贴到 GUI 中的其他位置。
如何从 cmd.exe 或使用 PowerShell cmdlet 完成此操作?
这是一个微不足道的问题,但让我烦恼的是我无法深入了解它:
我正在运行 Windows 8,Powershell 3.0 版。通过右键单击标题栏,我可以进入属性并更改字体、大小、背景颜色等,没有任何问题。
关闭并重新启动 Powershell 后,我所做的所有更改都保留下来,除非我将字体设置为 Lucida Console,然后在重新打开时我会得到 Raster 字体。
(请注意,以上所有内容都适用于我以管理员身份运行 Powershell 的情况。)
所以:
任何人都可以建议可能会出什么问题吗?
(我所做的一个观察是,在将字体设置为 Lucida 后重新打开 Powershell 时,起初窗口的宽度是字体为 Lucida 时的宽度,但一秒钟后,它会稍微变宽以适应光栅字体。)
我最近刚刚重新安装了 Windows,在设置我的环境时,我注意到我在 Notepad++ 中编辑的各种编程语言的所有关联(自然地)都消失了。
我在考虑未来,拥有某种批处理文件可以通过单击按钮自动将选择的文件扩展名与 N++ 相关联,而不是等到我遇到所有这些扩展名时,这不是很棒吗?经历导航到 N++ exe 等的繁琐。
我无法Default Programs使用 Windows 7 附带的实用程序执行此操作,因为它仅适用于已“遇到”的扩展。
那么是否有可能以编程方式将文件扩展名与 Windows 上的应用程序相关联?
考虑以下 Powershell 脚本,该脚本在 C:\ 中搜索名称中带有“og”的文件夹:
PS C:\> (ls | %{$_.Name} | ?{$_.Contains("og")})
性能日志
程序文件
设置日志
现在我缩小搜索范围,只得到一项:
PS C:\> (ls | %{$_.Name} | ?{$_.Contains("Prog")})
程序文件
奇怪的是,第一个操作产生一个array,而第二个操作(恕我直言,语义上是相同的操作,所以它应该产生相同类型的结果)产生一个string。这可以在以下结果中看到:
PS C:\> (ls | %{$_.Name} | ?{$_.Contains("og")}).Length
3
PS C:\> (ls | %{$_.Name} | ?{$_.Contains("Prog")}).Length
13
这可能非常令人恼火,因为显然匹配“og”的文件夹比匹配“Prog”的文件夹少。
显然,PowerShell 隐式地将单项数组“拆箱”为单个对象,我们永远不会得到长度为 1 的数组。似乎每次我想计算管道中的结果时,我都必须检查我是否“ m 是否处理数组。
我怎样才能防止这种情况发生?你如何处理这个问题?
我如何从 cmd 运行此命令:
powershell.exe "(get-process | ? {$_.Description -eq "Sysinter Process Explorer"}) | select processname | out-file $env:APPDATA\example.txt"
我仍然收到此错误:
您必须在“-eq”运算符的右侧提供一个值表达式。在 line:1 char:37 + (get-process | ? {$_.Description -eq <<<< Sysinternals Process Explorer}) | 选择进程名| 输出文件 $env:APPDATA\example.txt + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException +fullyQualifiedErrorId : ExpectedValueExpression
Windows PowerShell和 Linux 一样强大和高效terminal吗?
离线人员告诉我,Windows PowerShell 试图让 Unix 管理员在使用 Windows 时感觉更舒服,但没有做太多解释。但我想,只有当它具有(或几乎)相同的效率时,他们才会感到舒适。
如果我在命令行上运行一个程序,其位置是通过Path环境变量解析的,则该程序的工作目录通常设置为其安装目录。
我想从控制台窗口运行这样的程序并将其工作目录设置为当前或其他显式目录。我可以通过将程序临时复制到我的工作目录来做到这一点——在 cmd.exe 或 powershell.exe 环境中是否有另一种方法来实现这一点?
与此任务类似的 Windows shell 是创建一个快捷方式并相应地设置“开始于”属性。
powershell ×10
windows ×4
command-line ×3
batch ×1
cmd.exe ×1
fonts ×1
linux ×1
pipe ×1
process ×1
terminal ×1
windows-10 ×1
windows-7 ×1