AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-428697

user428697's questions

Martin Hope
user428697
Asked: 2020-11-28 12:11:05 +0800 CST

求等效wsl.exe命令行

  • 6

Windows 桌面快捷方式目标字段中的以下单个命令行将 ping 地址并为其添加时间戳。

C:\Windows\System32\bash.exe -c "ping 1.0.0.1 | while read line; do echo `date` - $line; done"

示例输出:

Fri Nov 27 14:08:05 CST 2020 - PING 1.0.0.1 (1.0.0.1) 56(84) bytes of data.
Fri Nov 27 14:08:05 CST 2020 - 64 bytes from 1.0.0.1: icmp_seq=1 ttl=58 time=26.7 ms
Fri Nov 27 14:08:06 CST 2020 - 64 bytes from 1.0.0.1: icmp_seq=2 ttl=58 time=35.5 ms
Fri Nov 27 14:08:07 CST 2020 - 64 bytes from 1.0.0.1: icmp_seq=3 ttl=58 time=42.0 ms

我在这里读到应该使用 wsl.exe 而不是 bash,但我不知道如何创建等效命令。

(要在 Windows 10 中执行任何此操作,您需要在 Windows 10 中启用“适用于 Linux 的 Windows 子系统”,并根据此 HTG 文章从 Microsoft Store 安装 Ubuntu 。)

windows-10 bash-scripting
  • 2 个回答
  • 45 Views
Martin Hope
user428697
Asked: 2020-10-16 07:18:26 +0800 CST

从 Outlook 2016 开始,Scanpst.exe 可以运行多次传递,但您如何获取它来进行备份?

  • 5

这个新的(2020 年 10 月 10 日)Microsoft 文档描述了收件箱修复工具(Scanpst.exe) 如何在 Outlook 2016 和 365 中运行多次传递。我已经尝试了命令行参数,但无法让 -backupfile 工作。它似乎也没有相关的帮助选项(例如,-h 或 -?)。有人对此有更多的知识或经验吗?

microsoft-outlook-2016
  • 2 个回答
  • 630 Views
Martin Hope
user428697
Asked: 2020-07-14 17:22:44 +0800 CST

在 W10 批处理文件中,如何在提升运行时保留当前的 ​​%username%?

  • 8

有时在 Windows 10 中,我想暂时向标准用户授予管理员权限,例如当我以该用户身份登录并希望无需重复输入管理员用户密码的情况下工作。

过去,我会使用标准用户名对批处理文件进行硬编码。今天,在大流行引起的失误中,使用 %username% 的概念浮现在脑海中:

@echo
net localgroup administrators %username% /add
echo %username% set to Administrator
echo See next report to verify
echo.
net user %username%
pause

当我“以管理员身份”运行该批处理文件时,变量 %username% 包含管理员用户名而不是当前用户。

继续我的妄想,我想我可以将 %username% 保存到一个变量中,运行一个被广泛引用的自我提升程序,然后完成这项工作。

@echo off
set un=%username%

:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"
:--------------------------------------

net localgroup administrators %un% /add
echo %un% set to Administrator
echo See next report to verify
echo.
net user %un%
pause

结果和以前一样。我应该记得批​​处理文件不会逐行执行。

在我深入研究杂草并学习如何将 %username% 值写入文件或尝试其他未受过教育的猜测之前(推/弹出似乎不存在),我希望这里有人能指出我正确的方向.


@DavidPostill 建议我尝试 setlocal 和 endlocal。ss64.com 上的示例是:

@Echo off
SETLOCAL
::Standard commission
Set _Commission=20
Echo Standard commission %_Commission%

::Premium commission
SETLOCAL
Set _Commission=30
Echo Premium commission %_Commission%

::back to Standard commission
ENDLOCAL
Echo %_Commission%

模拟示例中两个 SETLOCAL 和一个 ENDLOCAL 的位置,我的脚本现在变为:

:: REM --add the following to the top of your bat file--
@echo off
SETLOCAL
set un=%username%
echo At this point the variable un should contain the standard username
echo.
echo Currrent user name: %un%
echo.
pause
SETLOCAL

:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"
:--------------------------------------

echo Elevation complete. 
echo.
echo After elevation the current username is %un%
echo.
echo Press Enter to see if ENDLOCAL restores the original un value
pause
ENDLOCAL
echo Current user name: %un%
:: net user %un%
echo.
pause

运行批处理文件后,这是出现的初始命令窗口。到目前为止,变量 %un% 中包含标准用户的用户名。

初始命令窗口

按 Enter 后,系统会提示我输入管理员用户的密码,我这样做了。

现在出现以下命令窗口,部分重复显示标准用户用户名的代码,然后执行其余部分。即使在 ENDLOCAL 之后,变量 %un% 也是管理员用户的用户名。

在此处输入图像描述

谢谢你。

batch-file username
  • 1 个回答
  • 396 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve