问题标签 [computer-name]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
environment-variables - 当我的终端从 XXX@bogon 更改为 XXX@localhost 时,我的环境变量消失了
我是macbook的新用户,当我的终端输入从XXX@bogon变为XXX@localhost时,我的环境变量消失了,我使用的终端是iTerm2,但我认为没关系。问题是我如何将 XXX@localhost 更改为 XXX@bogon?或者我如何获得我的环境变量?Besize,我单击名为“新窗口(默认配置文件)”iTerm2 的菜单,然后我的终端变为 XXX@MacBook-Pro。
azure - 如何从计算机上的 VM 名称中获取 Azure 规模集名称
我正在尝试从计算机名称中获取 Azure VM 规模集的名称。我能够接近,但并不可靠。我发现这篇文章提到了 (vmss name)(base 36 instance id) 格式,我发现它相当准确,尽管 VMSS 名称少于 9 个字符,但我似乎在我的计算机名称中添加了随机的额外字符不会出现在 Azure 中。
例如:(在 Azure 门户中)
VMSS 名称 = "win10"
实例 ID = 2
计算机名称 = "win10_2"
因此,我希望机器名称为“win10000002”,但是,每当我远程进入虚拟机并查看计算机名称时,它会显示“win10bc5n000002”,请注意其中添加了额外的“bc5n”。有谁知道为什么会发生这种情况或一种可靠地预测它的方法,以便我可以在获取机器上的计算机名称时以编程方式将其删除?我的 VMSS 名称的长度将不一致,因此我无法可靠地拆分字符串以删除 4 个额外的字符。
python - 如何在 MacOS Sierra/High Sierra 中使用 python 获取用户设置的计算机名称
以下问题已部分回答,请参阅下面的解决方案部分。所以我发布这个部分是为了帮助别人,而且因为我的解决方案还没有真正解决问题。
问题
因此,问题是为什么以下技术(使用 python 的平台和套接字库)给出的主机名会根据您连接的路由器给出不同的主机名,以及为什么它与计算机名和本地主机名也不同。顺便说一下,这也是非常特定于 mac 的。
首先,我使用的是配备 High Sierra 10.13.6 的 MacBook pro 2015 型号。我使用终端并执行以下操作:
根据分配给 MacBook 的 IP 地址,这给了我类似“192-168-1-4.tpgi.com.au”的信息。不同的路由器给出不同的结果。我也得到了类似的结果
它再次返回类似“192-168-1-4.tpgi.com.au”的内容。
其次,我承认回答类似问题 4271740/how-can-i-use-python-to-get-the-system-hostname 的文章
但是,这个问题略有不同,毕竟据我的应用程序的用户所知,主机名应该是他们可以在系统设置中看到的主机名,这实际上是不同的。如果我运行:
我得到了系统设置中显示的名称(在共享下,它相当容易混淆地显示计算机名称和本地主机名,它们也可能不同)。本地主机名与限定语句一起显示:
您本地网络上的计算机可以访问您的计算机: foo.local
这一切都是问题的原因是我的应用程序使用了主机名,这与mac上的本地主机名和计算机名不同。这个主机名随后会出现在我们的用户界面中,当然,当它的格式为“192-168-1-4.tpgi.com.au”时,它对于识别用户的计算机没有帮助。用户很可能希望看到他们的计算机名称,因为这是可见的。在 Mac 上,主机名是不可见的,它可以通过命令设置或获取,但如果我们的用户遇到这个问题,它不太可能是我们的用户自然会想到的。
解决方案
所以问题与我相信如何开箱即用地设置mac有关。主机名可以在 Mac 上通过终端中的以下命令进行查询:
这将返回实际用于解析 IP 地址的主机名。正如我上面提到的,这与使用我们的应用程序时容易引起混淆的计算机名称不匹配。当我运行以下查询时,我发现了这一点。
因此,我使用以下命令将主机名设置为我可以识别的机器名称,如下所示
现在,当我运行以下命令时,我得到了我和其他技术含量较低的用户所期望的结果。
最后只是为了更好的衡量,我从终端跑了
结论
好的,所以虽然我已经写到我找到了一个解决方案,但它并不是我真正需要的解决方案,问题是我需要显示用户设置的计算机名称并且将识别而不是主机名。由于我使用的是 python,我真的很希望能够找到一个用于 mac 的 python 命令,它可以找到计算机名称,而不是主机名。因此,如果有人知道这样做的干净且可持续的方式(我宁愿不必运行 shell 命令并解析其输出),我将非常感激!如果相同的命令(或函数)也可以在 Windows 和 linux 等其他操作系统类型上运行,那就太好了,但我已经接受这是一个 mac 的东西,至少据我所知。
同时,如果其他人遇到类似问题,我希望以上内容有所帮助:)
谢谢!
batch-file - 如何使用批处理文件获取 LAN 和 WLAN MAC 地址?
我最近一直在尝试制作一个批处理文件来识别计算机的序列号、WLAN 和 LAN MAC 地址。检索设置信息后,我希望它以这种格式重命名计算机描述:“序列号 4444 WLAN 4444 LAN 4444”
wlan 和 lan mac 地址的代码不起作用,我不知道为什么。
我尝试在 powershell 中执行此操作并且成功但我不知道如何调用该变量。
$var=(Get-WmiObject Win32_NetworkAdapterConfiguration | where {$_.ipenabled -EQ $true}).Macaddress | select-object -first 1
powershell - 如何使用计算机列表正确调用 Get-WmiObject 的变量
我正在尝试确定如何使用计算机列表正确调用 Get-WmiObject 的变量。
无论我做什么,我都无法让这段代码工作。
我花了几个小时审查代码来编译我拥有的代码,感觉自己已经完成了 90% 的工作,但无法超越这最后一点。我也是 Powershell 的新手,但正在尝试我的屁股
错误信息:
新文本 Document.ps1:4 char:8 + foreach $comp{ + ~ 在关键字“foreach”之后缺少开头“(”。
新文本 Document.ps1:4 char:14 + foreach $comp{ + ~ 表达式或语句中出现意外标记“{”。
新文本 Document.ps1:22 char:39 + 'TPM SpecVersion' = $tpm.SpecVersion + ~ 哈希文字不完整。
新文本 Document.ps1:4 char:14 + foreach $comp{ + ~ 在语句块或类型定义中缺少结束“}”。
新文本 Document.ps1:23 char:3 + ) + ~ 表达式或语句中出现意外标记 ')'。
新文本文档.ps1:26 char:1 + }| Export-Csv -Path .\Result.csv -NoTypeInformation + ~ 表达式或语句中出现意外标记“}”。
新文本 Document.ps1:26 char:2 + }| Export-Csv -Path .\Result.csv -NoTypeInformation + ~
不允许使用空的管道元素。+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : MissingOpenParenthesisAfterKeyword
c# - 如何从远程 Windows 计算机检索机器名称?
我正在尝试找到一种从 C# 中的 IP 地址检索计算机名称的方法,但是所有在线标记为检索计算机名称或计算机名称的答案实际上都获得了主机名,而不是计算机名称。如果您转到“控制面板”>“系统”,则该菜单“计算机名”中有一个属性...我正在远程计算机上查找此值。AFAIK,如果没有 DNS 映射,主机名将 =完整的计算机名称。问题是我正在处理的这些服务器确实具有 DNS 映射,因此主机名返回它们的 DNS 地址。
如果我说错了,请随时纠正我的技术细节,但问题仍然存在。
我试过这个:
但显然返回主机名,而不是计算机名。我还可以满足返回的“完整计算机名称”属性,然后简单地去掉字符串中不需要的部分以显示“计算机名称”。
此外,如果您知道如何使用 PowerShell 执行此操作,我也可以使用您的帮助。无论如何,我在我的应用程序中托管 PowerShell 引擎......所以可以简单地将您的命令传递到PowerShellInstance.AddScript(_yourCommandHere);
并将其返回到我的应用程序中。
请告知是否可以这样做。
@DanielAWhite 编辑:这是列出答案的副本吗?那篇文章中的答案正是我发布的这个问题的问题。不,这不是重复的,因为我不是在寻找主机名。我在我的 OP 中特别告诉过你,我不是在寻找那个,他们也没有问我在问什么。如果没有办法从 .NET 中的 IP 获取计算机名称,那么只需用它来回答问题。
从“重复”:
好吧,并不是每个 IP 地址都有名称。但是,给定 IPAddress 您可以使用 >Dns.GetHostEntry 尝试解决它。另请注意,如果它是 NAT > 路由器,您将获得路由器的 IP 地址,而不是它们的实际 > 机器。
看看我的 OP... .GetHostEntry 不起作用。这就是我花时间打字的全部原因。
谢谢
双重编辑:培根有一个如何做到这一点的答案;这篇文章被锁定了,因为有人没有花时间真正阅读我写的内容。由于它被锁定,您也无法给出更好的答案。但我是这样做的,将其保存在这里以供将来参考:
哦,根据评论中的培根,您必须允许 WMI 通过 Windows 防火墙才能正常工作。它对我来说非常有效。
python-3.x - 使用 Python 设置主机名
我已经搜索了一些 Python 库(操作系统、平台、套接字),但我似乎找不到如何设置/写入/配置主机名(计算机名)。我知道如何获取它,但我需要知道如何设置它。这适用于 Windows 10 计算机。
如果有人有任何提示,谢谢!
powershell - 根据当前 IP 地址更改计算机名称并从 CSV 文件查找的 PowerShell 脚本
对于需要重命名的特定 PC(大约 10,000 台),我们正在进行大量工作。他们处于工作组模式(未加入域)。显然,如果我们可以编写脚本并远程执行,我们应该这样做。我一直在努力更好地理解 PowerShell,并认为如果我能正确编写代码,它实际上可以很容易地完成。我需要一个非常简单的脚本,它将:
- 获取机器的当前 IP 地址。
- 将该 IP 地址与 CSV 格式的列表进行比较。
- 从列表中,使用基于 IP 地址的新计算机名称并重命名计算机。
CSV 将非常简单:
这是我到目前为止但不工作的脚本:
winapi - 调用GetComputerNameA时,程序无错误崩溃
我正在尝试GetComputerNameA
从 AutoIt 调用,这是我的代码:
但是在我运行它之后,它不会打印任何东西,就像脚本崩溃而没有错误一样。
知道为什么它没有调用它吗?
computer-name - 在 MDT 中为 OsdComputerName 设置最大长度
他们是一种在 MDT 中为 OsdComputername 设置最大长度的方法。默认情况下它是 15 个字符,但我们需要它的最大长度为 8 个字符。
我第一次有客户问这个限制......
我想这是可能的,但我找不到任何解决方法。
提前致谢。