Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >环境变量仅适用于提升(admin)命令提示符,而不适用于常规命令提示符。

环境变量仅适用于提升(admin)命令提示符,而不适用于常规命令提示符。
EN

Stack Overflow用户
提问于 2022-09-19 05:31:50
回答 1查看 115关注 0票数 0

我使用的是Windows11 Pro版本: 21H2 (构建: 22000.978)

因此,我的设备上有OpenSSH,也就是添加到系统路径变量中,如下面的命令提示符片段所示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
C:\Windows\System32>set path  
Path=C:\oraclexe\app\oracle\product\11.
\VMware Workstation\bin\;C:\WINDOWS\sys
1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Pr
\ProgramData\nvm;C:\Program Files\nodej
m Files\dotnet\;C:\Android\android-sdk\
in;C:\Program Files\Git\cmd;C:\Program

我在System32文件夹中,在命令提示符提示符(normal window \xnon)中,通过输入以下命令打开当前目录E 219中的Explorer:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
explorer .

确实看到了OpenSSH文件夹,但,当我试图进入(更改目录)到OpenSSH时,命令提示符抛出一个错误,表示路径不存在E 230。但它确实存在于硬盘上!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
C:\Windows\System32>cd OpenSSH
The system cannot find the path specified.

显然,我无法访问位于ssh.exe目录中的OpenSSH目录。

但是interestingly,当我提升shell (将CMD打开为管理员)并尝试访问OpenSSH目录甚至文件ssh.exe时,工作了!当我使用where 命令 for ssh时,它指向正确的目录,如下所示:

命令提示符作为标准用户:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
C:\Windows\System32>ssh
'ssh' is not recognized as an internal or external command,
operable program or batch file.

命令提示符作为管理员:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
C:\Users\Admin>where ssh
C:\Windows\System32\OpenSSH\ssh.exe

它只是在普通窗口中对cmd不工作,但是当cmd作为打开时,工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-19 06:42:33

请首先阅读有关Windows 文件系统重定向器的微软文档,以及最好的文档页WOW64实现细节受WOW64影响的注册表项

当64位Windows上的32位应用程序使用%SystemRoot%\System32\cmd.exe%ComSpec%cmd.exe启动%SystemRoot%\System32\cmd.exe时,或者在最坏的情况下仅用cmd启动32位应用程序时,由于文件系统重定向器,%SystemRoot%\SysWOW64目录中会启动32位版本的%SystemRoot%\SysWOW64命令处理器。

文件系统重定向器还负责将%SystemRoot%\System32\OpenSSH的每次访问重定向到64位Windows上不存在的%SystemRoot%\SysWOW64\OpenSSH,因为OpenSSH包只有在64位Windows上的64位应用程序套件可用时才可用(取决于OpenSSH的版本)。

作为管理员的使用会在64位Windows上启动%SystemRoot%\System32中的64位cmd.exe,因此对%SystemRoot%\System32中的文件和目录的任何访问都不会进行文件系统重定向。有关详细信息,请参阅为什么“以管理员身份运行”更改(有时)批处理文件的当前目录?

在Windows批处理文件中,可以使用以下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@echo off
setlocal EnableExtensions DisableDelayedExpansion

rem Expect ssh.exe in OpenSSH in Windows system directory by default.
set "ExeSSH=%SystemRoot%\System32\OpenSSH\ssh.exe"
if exist "%ExeSSH%" goto RunSSH

rem Expect ssh.exe in OpenSSH in native Windows system directory
rem on batch file processed by 32-bit cmd.exe on 64-bit Windows.
set "ExeSSH=%SystemRoot%\Sysnative\OpenSSH\ssh.exe"
if exist "%ExeSSH%" goto RunSSH

rem Search for OpenSSH using environment variable PATH.
rem The environment variable ExeSSH is undefined by the
rem next command line on no file ssh.exe found by cmd.exe.
for %%I in (ssh.exe) do set "ExeSSH=%%~$PATH:I"
if defined ExeSSH goto RunSSH

rem There could not be found the executable ssh.exe anywhere.
echo ERROR: Could not find ssh.exe in any directory.
echo/
pause
exit /B 1

:RunSSH
rem Use here "%ExeSSH%" ... to run this executable.
echo Found: "%ExeSSH%"
endlocal

此批处理文件可用于Windows和所有较新的Windows版本,因此,在旧版本上,最有可能输出的是由于默认情况下未安装可执行文件ssh.exe而找不到的错误消息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73774215

复制
相关文章
mysql创建索引视图_mysql中创建视图、索引[通俗易懂]
视图中的数据依赖于原来表中的数据,一旦表中数据发生改变,显示在视图中的数据也会发生改变。
全栈程序员站长
2022/09/16
7.7K0
php-过滤器
filter_var() – 通过一个指定的过滤器来过滤单一的变量 filter_var_array() – 通过相同的或不同的过滤器来过滤多个变量
kdyonly
2023/03/03
7630
SQL语句创建视图:
定义: 根据用户的各种需求重新构造表的数据结构,这种数据结构就是视图. 视图是从一张或多张表中导出来的表,它不是真实存在的基本表,而是一张虚表,并没有像基本表一样存储在数据库中,而是相当于一个查询结果集合保存一样.
初阶牛
2023/02/25
1.5K0
SQL语句创建视图:
创建局部模型视图
当模型中的表数量过多,导致关联变得复杂,不利于用户分析和理解表关系,而旧版Power BI中只提供这一种模型全局视图。
公众号PowerBI大师
2019/09/30
1K0
创建局部模型视图
Django 中 自定义过滤器的创建和使用,以时间过滤器为例
模版过滤器必须要放在 app中,并且这个 app必须要在 INSTALLED_APPS中进行安装。然后再在这个 app下面创建一个 Python包叫做 templatetags。再在这个包下面创建一个 python文件。 本项目中的python文件名字为print_timestamp.py
一写代码就开心
2020/12/01
1.9K0
Django  中  自定义过滤器的创建和使用,以时间过滤器为例
View视图的创建
在撸代码的过程中经常遇到创建 View 视图,创建视图有四种方式,但是这四种创建方式到底有什么不同呢?以前只知道能创建,但是不是这四种创建方式的区别,今天让我们一起去解析一下这几种创建方式。
CatEatFish
2020/07/09
1K0
View视图的创建
Django 中 自定义过滤器的创建和使用,以时间过滤器为例
模版过滤器必须要放在 app中,并且这个 app必须要在 INSTALLED_APPS中进行安装。然后再在这个 app下面创建一个 Python包叫做 templatetags。再在这个包下面创建一个 python文件。 本项目中的python文件名字为print_timestamp.py
一写代码就开心
2022/05/09
1.4K0
Django 中 自定义过滤器的创建和使用,以时间过滤器为例
如何创建CDS视图
今天继续聊S/4 HANA的CDS视图,上一篇我们简单介绍了一下CDS视图的几个聚合函数,如果你还没来得及看,请翻阅《简单介绍几个CDS视图聚合函数》。
matinal
2020/11/27
2.4K0
如何创建CDS视图
sqlserver 视图创建索引_Oracle创建索引
1、添加索引 create index 索引对象名 on 索引对应表名(表内索引对象字段名); 例:需创建包含userid属性的userinfo表。 create index userid on system.userinfo(userid);
全栈程序员站长
2022/10/04
1.3K0
Servlet过滤器,Servlet过滤器创建和配置
第一:Servlet的过滤器的创建和配置,创建一个过滤器对象需要实现javax.servlet.Filter接口,同时实现Filter的3个方法。        第一方法是过滤器中的init()方法用
别先生
2017/12/29
9190
Servlet过滤器,Servlet过滤器创建和配置
利用动态SQL创建视图
本站文章除注明转载/出处外,均为本站原创,转载前请务必署名,转载请标明出处
overme
2022/01/18
1.4K0
利用动态SQL创建视图
php案例:高级过滤器
在PHP 中,过滤器(Filter)是一种用于验证和过滤用户输入数据的机制。它可以帮助确保输入数据的合法性和安全性。过滤器通常与输入验证和数据清理一起使用,以防止恶意代码注入和其他安全漏洞
贵哥的编程之路
2023/12/26
1160
php案例:高级过滤器
MySQL/Oracle视图的创建与使用
视图是一个虚拟的表,是一个表中的数据经过某种筛选后的显示方式,视图由一个预定义的查询select语句组成。
互联网金融打杂
2018/08/02
1.4K0
MySQL视图的创建与使用
视图是MySQL的一种虚拟表,实际的表我们可以看到每一行的数据,而视图是另一种形式的表,他可以将任何的查询结果变成一种虚拟的表方便下一次进行查询。
大猫的Java笔记
2020/09/30
2.2K0
sqlserver创建视图索引「建议收藏」
索引视图创建注意事项 对视图创建的第一个索引必须是唯一聚集索引。 创建唯一聚集索引后,可以创建更多非聚集索引。 为视图创建唯一聚集索引可以提高查询性能,因为视图在数据库中的存储方式与具有聚集索引的表的存储方式相同。 查询优化器可使用索引视图加快执行查询的速度。 要使优化器考虑将该视图作为替换,并不需要在查询中引用该视图。
全栈程序员站长
2022/09/16
3.4K0
sqlserver创建视图索引「建议收藏」
SwiftU:在循环中创建视图
通常在一个循环中创建多个SwiftUI视图。例如,我们可能想要遍历一系列名称,并让每个名称成为文本视图,或者遍历一系列菜单项,并将每个名称显示为图像。
韦弦zhy
2020/03/20
2.2K0
PHP过滤器预定义常量
常量名值(PHP7.2.4)说明INPUT_POST0POST变量INPUT_GET1GET变量INPUT_COOKIE2COOKIE变量INPUT_ENV4ENV变量INPUT_SERVER5SERVER变量INPUT_SESSION6SESSION变量INPUT_REQUEST99REQUEST变量
用户7886150
2021/02/26
1.6K0
PHP对象传值 - 引用传值
运行结果,其实第一次打印就可以看出来a 和 b 是一个对象,因为对象标识符一样(都是 1)
很酷的站长
2023/02/17
6K0
PHP对象传值 - 引用传值
如何创建、更新和删除SQL 视图
视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。
用户4988376
2021/07/16
1.6K0
《PostgreSQL物化视图:创建、维护与应用》
喵~ 🐱 猫头虎博主在此!如果你正在寻找“PostgreSQL物化视图”方面的知识,那么你找对了地方!物化视图是一种强大的工具,可以提高查询性能并简化数据处理。本文将详细介绍它的创建、维护和应用。加入我们,一起挖掘更多宝藏吧!🔍💡
猫头虎
2024/04/09
8160

相似问题

公开过滤器视图准则

10

OG +公开过滤器+视图

10

条件视图公开过滤器

10

如何翻译视图公开的过滤器?

10

公开视图组合过滤器不工作

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文