echo shell 打开的目录:startup

2023-12-01

进入时start shell:startup进入命令提示符,它会在启动文件夹中打开一个新窗口。如何打印该文件夹的路径但实际上不在资源管理器中打开该文件夹?


您可以使用.NET's Environment.SpecialFolder。此 PowerShell 命令将为您提供启动文件夹的路径

[Environment]::GetFolderPath([Environment+SpecialFolder]::Startup)

如果你真的想使用cmd那么你可以像这样调用上面的命令

powershell -C [Environment]::GetFolderPath([Environment+SpecialFolder]::Startup)

并使用使用for /f像平常一样将其保存到变量中

或者使用混合批处理/VBS 解决方案

<!-- : Begin batch script
@echo off
cscript //nologo "%~f0?.wsf" %1
exit /b

----- Begin wsf script --->
<job><script language="VBScript">

Set oShell = CreateObject("Wscript.Shell")
Set oSFolders = oShell.SpecialFolders
WScript.Echo oSFolders("Startup")

</script></job>

或混合 Batch/Js

@if (@CodeSection == @Batch) @then
@echo off
cscript //e:jscript //nologo "%~f0" %*
exit /b
@end

// JScript Section
WScript.Echo((new ActiveXObject("shell.application")).namespace(0x07).Self.Path);

0x07 这里是Shell 特殊文件夹常量用于启动

只需将上述 2 个片段保存为 *.bat 文件并运行即可。或者剥离批处理部分,使其成为纯VBS/Js解决方案。

事实上,这些代码片段使用 COM 对象,因此可以用任何支持 COM 对象的语言编写它们,例如在 PowerShell 中:

(New-Object –ComObject Shell.Application).namespace(0x07).Self.Path

or

$c = New-Object -ComObject Wscript.Shell
$c.SpecialFolders("Startup")

可以使用纯批处理来获取路径,而无需借助 PowerShell、VBS 或 Js,但要棘手得多

注册表中有 2 个键包含特殊文件夹的路径:HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders and HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders。这是解析它们的方法这个答案:

@echo off
setlocal EnableExtensions DisableDelayedExpansion

set "StartupFolder="
for /F "skip=1 tokens=1,2*" %%I in ('%SystemRoot%\System32\reg.exe QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Startup 2^>nul') do if /I "%%I" == "Startup" if not "%%~K" == "" if "%%J" == "REG_SZ" (set "StartupFolder=%%~K") else if "%%J" == "REG_EXPAND_SZ" call set "StartupFolder=%%~K"
if not defined StartupFolder for /F "skip=1 tokens=1,2*" %%I in ('%SystemRoot%\System32\reg.exe QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Startup 2^>nul') do if /I "%%I" == "Startup" if not "%%~K" == "" if "%%J" == "REG_SZ" (set "StartupFolder=%%~K") else if "%%J" == "REG_EXPAND_SZ" call set "StartupFolder=%%~K"
if not defined StartupFolder set "StartupFolder=\"
if "%StartupFolder:~-1%" == "\" set "StartupFolder=%StartupFolder:~0,-1%"
if not defined StartupFolder set "StartupFolder=%UserProfile%\Startup"

echo Startup folder is: "%StartupFolder%"

endlocal
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

echo shell 打开的目录:startup 的相关文章

随机推荐

  • 主线程检查器:在后台线程上调用的 UI API:-[UIApplication applicationState]

    我在 Xcode 9 beta iOS 11 中使用谷歌地图 我收到输出到日志的错误 如下所示 主线程检查器 在后台线程上调用的 UI API UIApplication applicationState PID 4442 TID 8378
  • 更改 std::map 内元素的键的最快方法是什么

    我理解为什么不能这样做的原因 重新平衡之类的 iterator i m find 33 if i m end i gt first 22 但到目前为止 更改键的唯一方法 我知道 是从树中删除节点 然后使用不同的键将值插入回来 iterato
  • 如何为所有列设置 AND 条件 - php

    In MY TABLE如果我输入 floor fly 表返回No matching records因为全球搜索php 函数搜索单个列内的记录 但我希望 AND 条件适用于所有列 如果我输入floor fly表应该显示如下内容 Column1
  • 按类名划分的 JavaFX 样式

    也许是一个基本问题 但是是否可以在 JavaFX 中通过类名设置表元素的样式 例如这样 MyClassname table view column header label fx text fill F00 我希望它可以在 1 个样式表中设
  • 可以从Javascript文件访问MVC ViewBag对象吗?

    是否可以从 MVC 应用程序中的 javascript 文件执行以下操作 function alert ViewBag someValue 目前它抛出错误 引用未定义的 XML 名称 ViewBag 我不认为目前有任何方法可以做到这一点 R
  • Git Clone 在 Azure 命令行任务中生成错误

    在我的 Azure DevOps CD 管道中 我添加了一个克隆 Git 存储库的命令行任务 克隆已成功完成 但日志中出现错误 奇怪的行为是克隆与 Azure 托管代理完美配合 例如vs2017 win2016 or Windows 201
  • 如何从 Azure AD B2C 身份验证获取电子邮件地址?

    我正在尝试让 Azure AD B2C 获取用户电子邮件地址 但我在提供该地址的令牌中看不到任何内容 即使我的登录 注册策略对用户电子邮件地址进行了 声明 我如何获得电子邮件地址 更一般地说 除了示例之外 是否有任何文档可以解释此服务的工作
  • 使用 prxmatch 匹配以某个字符结尾的字符串

    匹配以某个字符结尾的字符串 我正在尝试创建一个新变量 该变量指示字符串是否以某个字符结尾 下面是我尝试过的 但是当运行此代码时 变量ending in e全为零 我希望像 Alice 和 Jane 这样的名字会与下面的代码匹配 但它们不是
  • 结构体中零长度数组的用途是什么? [复制]

    这个问题在这里已经有答案了 当我查看Linux内核代码时 发现了以下代码 struct thread info struct task struct task struct exec domain exec domain unsigned
  • 如果 isNaN,如何将变量的内容更改为零 [重复]

    这个问题在这里已经有答案了 可能的重复 当我按 Enter 时 我得到 isNaN 但该值是一个数字 我上周日交了作业 它被发回给我进行更正 因为 isNaN 值返回到 Total 文本框 我认为这就是编程要做的事情 相反 根据她的说法 i
  • 在 Seaborn 箱线图中获取值

    我想通过 Seaborn 中生成的箱线图获取具体值 即媒体 四分位数 例如 在下面的箱线图中 来源 link 有没有办法获取媒体和四分位数而不是手动估计 import numpy as np import seaborn as sns sn
  • 打印文件中的每 n 行

    我正在尝试打印每个n文件中的第 3 行 但是n不是常量而是变量 例如 我想替换sed n 1 5p 与类似的东西sed n 1 i p 这可能吗 awk还可以用更优雅的方式做到这一点 awk v n YOUR NUM NR n 1 file
  • Kubelet 使用什么来确定节点的临时存储容量?

    我在虚拟机上运行 Kubernetes 集群 安装座的简要概述如下 df h Filesystem Size Used Avail Use Mounted on dev sda1 20G 4 5G 15G 24 dev mapper vg0
  • pandas read_csv 最后一列包含逗号

    所以我有一个 csv 数据集 根据我的书 该数据集格式良好 并且我正在尝试获取pandas包以正确加载它 标题由 5 个列名组成 但最后一列由包含未转义逗号的 JSON 对象组成 例如 A B C D E 1 2 3 4 K1 V1 K2
  • 是否有更简单(且仍然高性能)的方法来通过最近邻重采样来升级画布渲染?

    我对这个看似简单的以最近邻格式升级画布渲染的任务感到有点困惑 我在这里问 如何在 JS 中正确编写这个着色器函数 目标是像这样转换 3D 渲染输出 像这样的像素艺术 但在这个问题中我问的是如何实施我选择的解决方案 本质上使用着色器来处理放大
  • 如何使用“getOwnPropertyNames”迭代地图的内容

    我在代码部分下面发布了地图 我向地图添加了一些值 如图所示 但是当我尝试使用显示地图的内容时 getOwnPropertyNames 如代码所示 循环中的日志语句不显示任何内容 请让我知道如何正确使用 getOwnPropertyNames
  • 谷歌应用脚​​本文本框值未传递给 e.parameter.TextBoxName

    在下面的代码中 我定义了一个带有名称和 ID 的文本框 按钮处理程序工作正常 但我无法获取在文本框中输入的值 msgBox 出现了 但是e parameter matchValue显示为undefined 在应用程序的其他部分 我有相同的逻
  • 在delphi中关闭运行时的delphi异常

    有什么方法可以关闭 Delphi 应用程序运行时显示的异常消息吗 我认为必须有一个指令来关闭异常消息 但我不记得了 大多数异常消息可以通过处理来抑制TApplication OnException事件 仅当没有为该事件分配处理程序时 应用程
  • 将外部 JSON 加载到 ChartJs 中

    当谈到使用 JavaScript 库绘制图表时 我是一个新手 我刚刚开始尝试 Chartjs 但我无法使用 getJson 或其他任何东西来加载我的 json 对象并替换标签和数据 我以前使用过 HighCharts 与此相比 它相当简单
  • echo shell 打开的目录:startup

    进入时start shell startup进入命令提示符 它会在启动文件夹中打开一个新窗口 如何打印该文件夹的路径但实际上不在资源管理器中打开该文件夹 您可以使用 NET s Environment SpecialFolder 此 Pow