主机实现hostname的修改原理:

  修改注册表中的值:

    hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName 下的 ComputerName

    hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName 下的 ComputerName

    hklm\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters  下的 Hostname

    hklm\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 下的 NV Hostname

bat脚本实现:

@echo off
if not "%OS%"=="Windows_NT" goto END
if "%1"=="" (
set INFO=echo &&set skip=&&set err=
) else if "%1"=="/?" (
set INFO=echo && set skip=&&set err=&&goto DESC
) else if "%1"=="-q" (
set INFO=echo &&set err=&&goto ERR
) else if "%1"=="-r" (
set INFO=echo &&set err=&&goto ERR
) else (
set name=% && goto CHANGE
) %INFO% *******************************
%INFO% Script:ChangeHostname.bat
%INFO% Creation Date : // :
%INFO% Last Modified : // :
%INFO% Author: feiquan
%INFO% Email: @qq.com
:DESC
%INFO% *********************************
%INFO% Description:
%INFO% chang you hostname
%INFO% *********************************
%INFO% Examples:
%INFO% ChangeHostname.bat ===^> Interact mode
%INFO% ChangeHostname.bat /? ===^> Help mode
%INFO% ChangeHostname.bat "NewHostname" ===^> Commandline mode
%INFO% ChangeHostname.bat "NewHostname" -q ===^> Quiet mode
%INFO% ChangeHostname.bat "NewHostname" -r ===^> Restart Sysetm After 60s
%INFO% ChangeHostname.bat "NewHostname" -q -r ===^>Quiet mode, Restart Sysetm After 60s
%INFO% Echo N ^| ChangeHostname.bat "NewHostname" -q ===^>Quiet mode, No Restart Sysetm
%INFO% *********************************
if "%skip%"=="" goto END :START
color title Change Hostname
setlocal EnableDelayedExpansion
for /F "skip=1 tokens=3" %%i in ('reg query "hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" -v ComputerName' ) do set nowHostname=%%i echo Your computer hostname : %nowHostname% set /p n=Please input new hostname :
set name="!n!"
echo. :CHANGE
if "%2"=="-q" goto QUIET
if "%3"=="-q" goto QUIET set /p sure=Do you want to change hostname %name% ?(Y/N)
if /i not "%sure%"=="y" goto END :QUIET
reg add "hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" -v ComputerName -t REG_SZ -d %name% -f reg add "hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName" -v ComputerName -t REG_SZ -d %name% -f reg add "hklm\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -v Hostname -t REG_SZ -d %name% -f reg add "hklm\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -v "NV Hostname" -t REG_SZ -d %name% -f echo.
for /F "skip=1 tokens=3" %%i in ('reg query "hklm\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" -v ComputerName' ) do set nowHostname=%%i echo Your computer hostname has changed : %nowHostname%
echo After seconds , Restart your system.... if "%2"=="-r" goto RESERT
if "%3"=="-r" goto RESERT
set /p restart=Do you want to restart your system after 60s ? (Y/N)
if /i not "%restart%"=="y" goto END
:RESERT
shutdown -r -t -c "Your computer hostname has changed : %nowHostname% . Restart your system 60s ...." -d p::
goto END :ERR
echo Format Error , Please with "ChangeHostname.bat /? " to learn more .... :END
echo exiting....

下载地址:

  链接:https://pan.baidu.com/s/1Ik3C0juf4um1hU58p9sj9A
  提取码:p28f

bat 实现主机hostname的修改的更多相关文章

  1. CentOS6修改主机名(hostname)及 修改/etc/hosts 文件,增加ip和hostname的映射关系(转)

    CentOS修改主机名(hostname)  需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. ...

  2. 修改主机hostname

    1 修改hostname配置文件 vi /etc/sysconfig/network中的HOSTNAME 2 修改完后,使用hostname命令验证,发现hostname还是原来的 退出shell重新 ...

  3. linux @后面的主机名如何修改

    @后面的为linux系统的主机名 临时修改方法:执行 hostname 主机名再执行 bash 永久修改方法:修改配置文件/etc/sysconfig/network修改参数HOSTNAME=主机名永 ...

  4. CentOS6.3 Hostname设定修改

    今天装了个CentOS6.3恩,基本上是参照百度文库上面的文章来安装的 http://wenku.baidu.com/link?url=K0tqotryKLFHhJGicx1nC-hsgfWhL3OI ...

  5. 行云管家 V4.7产品新特性-国际化版本、支持Oracle的数据库审计、主机密码自动修改策略 发布日期:2018-11-22

    行云管家在线体验: 行云管家[官网]-领先的云计算管理平台-云安全,堡垒机,自动化运维​ 行云管家新手有礼活动: 行云管家新手有礼,新用户1元即可体验专业版-优惠券​ 发布日期:2018-11-22 ...

  6. ubuntu如何修改terminal终端的主机名(修改/etc/hostname文件)

    有时候安装完Ubuntu系统后,打开命令终端,终端显示的主机名格式比较难看,例如 我最近买的国内某云的VPS. xxx@VM-1560-ubuntu$ xxx@VM-1560-ubuntu$ 对于有洁 ...

  7. samba服务器加入域控主机所需要修改的配置文件

    samba服务器加入域控主机,成为域成员,当用户访问samba服务器上的共享文件时,直接到域控主机上进行认证.samba服务器上不需要像先前一样创建系统用户,创建samba用户及密码. 1.安装环境( ...

  8. Linux主机名域名修改问题

    1.修改 /etc/sysconfig/network  配置文件 vi  /etc/sysconfig/network 修改HOSTNAMEHOSTNAME=new-hostname.domainn ...

  9. Ubuntu 13.04 主机名的修改

    由于某些原因,要修改Ubuntu的主机名,晚上Google了一下,要改的地方为/etc/hostname,即将里面的字符串替换为你要起的主机名即可. sudo vi /etc/hostname 修改即 ...

随机推荐

  1. 并发库应用之十二 & 常用集合问题汇总

    1. List遍历时修改报错 别的先什么都不说,直接上代码看看就知道了: public class ListTest { public static void main(String[] args) ...

  2. Ajax跨域之ContentType为application/json请求失败的问题

    项目里的接口都是用springmvc写的,其中在@requestmapping接口中定义了consumes="application/json",也就是该接口只接受ContentT ...

  3. CentOS7快速搭建LNMP环境

    名词解释: LNMP:Linux+Nginx+MySql+PHPLAMP:LInux+Apache+MySql+PHPNginx的正确读法应该是Engine X我们使用CentOS自带的YUM来安装 ...

  4. Java描述数据结构之链表的增删改查

    链表是一种常见的基础数据结构,它是一种线性表,但在内存中它并不是顺序存储的,它是以链式进行存储的,每一个节点里存放的是下一个节点的"指针".在Java中的数据分为引用数据类型和基础 ...

  5. MongoDB中文档操作(二)

    一.插入文档  1.db.集合名.insert()   插入一个:db.user.insert({name:"Join",age:13,address:"beijing& ...

  6. 33.APP后端处理视频的方案

    在当前的app应用中,到处都能看到视频的身影,例如,在社交类的app上,用户可以拍摄属于自己的小视频,并发布到相应得栏目,增加和好友们互动的机会. 后台常见的视频处理有以下几种: ·          ...

  7. js判断对象是否为空

    /** *判断对象是否为空 * * @param e * @returns {Number} */function isEmptyObject(e) { var t; for (t in e) ret ...

  8. java 自定义的注解有什么作用

    转自https://zhidao.baidu.com/question/1668622526729638507.html 自定义注解,可以应用到反射中,比如自己写个小框架. 如实现实体类某些属性不自动 ...

  9. 理解、学习与使用 Java 中的 Optional

    从 Java 8 引入的一个很有趣的特性是 Optional  类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) -- 每个 Java 程序员都 ...

  10. 【BZOJ 2844】: albus就是要第一个出场

    题目大意: 给一个长度为n的序列,将其子集的异或值排序得到B数组,给定一个数字Q,保证Q在B中出现过,询问Q在B中第一次出现的下标. 题解: 感觉和hdu3949第K小异或值有一像,然而发现要求出现次 ...