我们xyz.cmd
在工作中使用批处理文件 ( )编写了相当多的脚本和小助手。Windows 7 现在才开始在这里普及,很明显,我们遇到了与 32 位和 64 位 Windows 的不同环境变量相关的问题。
具体来说,如果您C:\Windows\system32\cmd.exe
在 64 位 Windows 上运行,您将获得:
...
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
...
Run Code Online (Sandbox Code Playgroud)
而如果您C:\Windows\SysWOW64\cmd.exe
在 64 位 Windows 上启动,您将获得:
...
ProgramFiles=C:\Program Files (x86) <-- NOTE
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
...
Run Code Online (Sandbox Code Playgroud)
碰巧也是如此,因为这个 cmd.exe 是一个 32 位进程,它也“免费”获得所有其他 SysWOW64 重定向——任何调用都regedit
将转到 32 位注册表等。
如果批处理文件应该执行一些与 32 位应用程序相关的任务,例如路径 + 注册表内容,这将非常有用。
鉴于我有一类我希望始终使用 32 位版本运行的批处理文件cmd.exe
,是否有 - 简单!-- 强制这些批处理文件在 64 位版本的 Windows 上始终使用 32 位 …
windows-registry windows-7 64-bit command-line environment-variables
将应用程序从运行嵌入 WinXP 的昂贵且不可靠的专用嵌入式 x86 盒迁移到运行正常 Win7-64 的 COTS 硬件(戴尔 E6410 笔记本电脑)。目前,使用嵌入式 Windows 7 进行部署是不可行的。
问题是,该系统仍然是“嵌入式”的。几乎任何时候电源都可能在没有事先警告的情况下关闭。我们已经剥离了操作系统并移除了电池功能,以便它可以根据需要断电。
该应用程序从不写入磁盘,因此我们不会严重破坏任何内容。在我们的应用程序启动并运行后,系统基本上处于空闲状态(一些计算、图形、TCP/IP 和串行通信除外),因此操作系统很快就会进入非常稳定的状态。
然而,在断电后,它正确地抱怨 Windows 没有成功关闭并向用户显示 Windows 错误恢复文本屏幕。如果不管它,它最终会继续正常启动,但如果可能,我们想跳过这一步。
WinXP-embedded 旨在自动执行此操作,所以我知道这是可能的。我查看了内核开关,但没有看到任何有关“跳过 Windows 错误恢复”的记录。
我还广泛阅读了启动过程:http : //jdebp.eu./FGA/windows-nt-6-boot-process.html
我知道我可以在注册表中禁用自动 chkdsk,但这也不是一回事。
那么,我如何简化启动过程,以免用户遇到正常情况下的麻烦?
直到最近,我的浏览器才开始忽略我的主机文件。我安装了 Windows 7 操作系统。
192.168.0.5 livesite.com
我试过了:
然后我试过了
知道为什么它会起作用吗?或者更好的是我没有尝试过的任何东西或我可能忽略的一些错误?
我正在使用 Windows 8 开发人员预览版 (x64) 进行测试。我想通过 DNS 访问一些本地网络资源。所以,我在我的主机文件 ( %sindir%/system32/drivers/etc/hosts
) 中添加了下一行:
169.254.1.20 host.local
Run Code Online (Sandbox Code Playgroud)
但是当我尝试 ping host.local 时,我收到以下错误
Ping request could not find host unsecure.local. Please check the name and try a
gain.
Run Code Online (Sandbox Code Playgroud)
尝试从 IE 中打开它也会显示连接错误(不需要本地代理并已关闭)。
但输出
C:\Users\moonorg>ipconfig /displaydns
Run Code Online (Sandbox Code Playgroud)
显示我的主机:
Windows IP Configuration
61.2.254.169.in-addr.arpa
----------------------------------------
Name does not exist.
20.1.254.169.in-addr.arpa
----------------------------------------
Record Name . . . . . : 20.1.254.169.in-addr.arpa.
Record Type . . . . . : 12
Time To Live . . . . : 86400
Data Length …
Run Code Online (Sandbox Code Playgroud) 我有一个全新的 Windows 7 安装。我已经编辑了hosts
文件,当我ping
从命令行使用正确的设置时 -ping
转到本地网络服务器而不是 Internet。Firefox 还会识别设置并转到正确的本地服务器。
Chrome、Safari 和 IE 根本无法识别新设置。我在任何地方都没有设置任何代理。我已经重新启动,“ ipconfig
/ flushdns
” -ed,停止并启动DNS服务,刷新浏览器缓存,疯狂地挥舞着我的手臂,并做了相当多的咒骂。
我该怎么做才能让这些浏览器识别新设置?
我有一个程序redshift
,我想在登录时自动启动它。如果我redshift
在终端(或redshift &
)或通过alt+运行“ ” f2,这将启动它。我认为它没有初始化脚本,所以redshift
在我的.profile
文件中添加“ ”会使其在启动时加载吗?我想一个 cronjob 设置@reboot
也可以工作?
我认为有些程序需要在特定的用户环境中执行,尤其是那些影响图形元素的程序?例如,如果我通过 SSH 连接到远程机器并尝试打开一个 GUI 程序,显然这是不可能的,所以它会失败。关于我从哪里执行这个程序,这就是我试图避免的。
要检查一组 URL 的 HTTP 响应标头,我使用 curl 发送以下请求标头
foreach ( $urls as $url )
{
// Setup headers - I used the same headers from Firefox version 2.0.0.6
$header[ ] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[ ] = "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[ ] = "Cache-Control: max-age=0";
$header[ ] = "Connection: keep-alive";
$header[ ] = "Keep-Alive: 300";
$header[ ] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[ ] = "Accept-Language: en-us,en;q=0.5";
$header[ ] = "Pragma: "; // browsers keep this blank.
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_USERAGENT, 'Googlebot/2.1 …
Run Code Online (Sandbox Code Playgroud) 在登录屏幕上输入密码后,我会看到以下消息:
Gilad (Gilad-PC \ Gilad)
Successful Login:
The last time you interactively logged on to this account was in [Date]
Unsuccessful Login:
No unsuccessful login is recorded
Run Code Online (Sandbox Code Playgroud)
有什么办法可以阻止此消息出现吗?
我的 mac 中有 vagrant vm 运行。
我不小心将 rpm2cpio 的输出重定向到标准输出。我很快取消了它,但现在我的键盘已经重新映射了一些键。
ÄvagrantÉus-devops-build02 üÅ$ ÄÅÄö\
Run Code Online (Sandbox Code Playgroud)
以下键已重新映射
[ = ä
] = Å
\ = ö
ctrl + c = ÜC
外壳名称显示
ÄvagrantÉus-devops-build02
Run Code Online (Sandbox Code Playgroud)
我已注销,然后以相同的结果重新登录
有谁知道为什么这些键会被重新映射?
考虑有 2 台使用 IPV6 协议的计算机想要相互通信,并且数据包必须通过使用 IPV4 协议的网络的情况。数据包可以通过该网络吗?如何?
我的键盘没有~
键,Windows 上的 Git Bash 不允许我输入Alt-###
组合符号或粘贴它。我该怎么做?
我在 VMware Workstation 7 中运行两个 VM:我的主要工作 VM(主机名main),运行 Ubuntu 11.04。使用我配置为使用 NAT 的 VMnet0 和同样在 VMnet0 中的基于 Debian 的设备(主机名服务器)。现在我需要从main到server获取一些数据,我认为我会使用 nfs 来完成。没有问题。
我以为我会将主机名放在我的主机(Windows 7 x64,主机名桌面)主机文件中。它看起来像这样:
192.168.130.10 main
192.168.130.12 server
Run Code Online (Sandbox Code Playgroud)
在 Windows 7 中,我尝试了 aping main
和 a ping server
,都成功了。然而,当我尝试ping desktop
或ping server
从主,它失败。nslookup desktop
返回
Server: 192.168.130.2
Address: 192.168.130.2#53
** server can't find desktop: NXDOMAIN
Run Code Online (Sandbox Code Playgroud)
(类似于nslookup server
)。
看起来 VMware 的 DNS 服务器并不关心我的主机文件。我该如何解决?
编辑:我应该提到我可以很好地浏览互联网,DNS …
我需要运行一个程序,该程序需要查找特定驱动器(unc
或regular
)中有多少可用空间
我需要它在CMD
.( 没有 ps)下工作
目标 :
c:\> something e:
1902323213 //nevermind mb /gb
Run Code Online (Sandbox Code Playgroud)
请注意:仅限数字!我没有处理字符串的工具(在我的软)
那么我尝试了什么?
我试过这个:
DIR \\dsmain\ls_BackUp\*.* | find "free"
产生:
2 Dir(s) 311,285,014,528 bytes free
我也试过这个:(最糟糕的)
fsutil volume diskfree c:
产生:
Total # of free bytes : 54761066496
Total # of bytes : 255953203200
Total # of avail free bytes : 54761066496
Run Code Online (Sandbox Code Playgroud)
题 :
使用 cmd(无 ps) - 如何运行仅返回驱动器可用空间的命令?
注意:
Sql server 需要在远程位置打开一个 bak 文件,我需要检查那里的可用空间,所以 sql 执行 cmd 命令,我可以捕获结果。所以我不想开始使用字符串操作来提取数字