Board logo

标题: [文件操作] 如果通过批处理修改指定路径下的文件夹名字。 [打印本页]

作者: 恒久快乐    时间: 2017-6-13 08:39     标题: 如果通过批处理修改指定路径下的文件夹名字。

D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_win2003_shyf

其中文件夹  OC4J_DBConsole_win2003_shyf 里面内容是配置文件,    win2003是计算机名,因为系统做封装,在未改名前就已安装好数据库软件,计算机改名后oracle生成的配置文件是固定写死的.

比如我的计算机名是WIN7   如何通过批处理把指定路径下的 win2003 字符更名为win7。  win7为变量,这个变量在批处理执行时随机修改。

OC4J_DBConsole_win2003_shyf 改名为  OC4J_DBConsole_win7_shyf.  大侠帮我写个批处理改名,谢谢。
作者: bailong360    时间: 2017-6-13 09:48

本帖最后由 bailong360 于 2017-6-13 09:49 编辑
  1. @move "D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_win2003_shyf" "D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_%ComputerName%_shyf"
复制代码
好久没来了 是这样?
作者: 恒久快乐    时间: 2017-6-13 10:52

这样也行。但是 %ComputerName%  我要手动输入计算机名时 就执行改名操作。
作者: 恒久快乐    时间: 2017-6-13 14:26

已解决,谢谢。


@echo off
set /p name=请输您的计算机名:
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v ComputerName /t reg_sz /d %name% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %name% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /t reg_sz /d %name% /f >nul 2>nul

@move "D:\oracle\product\10.2.0\db_1\win2003_shyf" "D:\oracle\product\10.2.0\db_1\%name%_shyf"

@move "D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_win2003_shyf" "D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_%name%_shyf"

echo.
作者: ShowCode    时间: 2017-6-13 14:57

回复 4# 恒久快乐


    move命令前面的@是多余的




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