Board logo

标题: [系统相关] [已解决]批处理中如何取得当前用户名 [打印本页]

作者: freesoft00    时间: 2009-4-5 16:58     标题: [已解决]批处理中如何取得当前用户名

批处理中如何取得当前用户名

批处理如下:

rem 修改所有者为当前用户
SubInAcl.exe" /file 文件名 /setowner=当前系统用户名

rem 取得完全控制权
echo y|cacls E:\NBMSClient\client.dll /g everyone:f

rem 去掉属性
attrib -r -a -s -h E:\NBMSClient\client.dll

rem 删除
del /q E:\NBMSClient\client.dll
exit

我如何取得本地计算机当前用户名,写一个变量。使它自动设定当前用户为所有者。如何判断系统管理员的用户名。

[ 本帖最后由 freesoft00 于 2009-4-10 01:16 编辑 ]
作者: defanive    时间: 2009-4-5 17:33

当前用户%username%

管理员帐户的话在net user里面找
作者: Batcher    时间: 2009-4-6 11:20     标题: 回复 2楼 的帖子

管理员账户:
  1. net localgroup Administrators
复制代码

作者: lxzzr    时间: 2009-4-10 03:31

  1. @echo off
  2. set path_=%0
  3. set path_=%path_:\=\\%
  4. for /f "usebackq tokens=3 delims= " %%i in (
  5.        `"wmic process where commandline='cmd /c "%path_% "' call GetOwner | find /i "User""`
  6.        ) do (
  7.        set user_name=%%i
  8. )
  9. set user_name=%user_name:~0,-1%
  10. echo 你的当前用户名为:%user_name%
  11. pause
复制代码

作者: qq362220083    时间: 2009-4-10 04:44

楼上的帅哥,咱用不到wmic吧,一个%username%貌似就解决了问题哦
作者: lxzzr    时间: 2009-4-11 01:05

开拓一下思维而已!




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2