|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『楼 主』:
"求助"运行BAT的BAT
刚学BAT.....
DOS基础也为零.........
但,还是挺喜欢BAT的....
请高手写一个程序...
此程序作用:
运行程序
指定:BAT或TXT文件,并运行它.......
此程序运行BAT是一个附带
而将TXT直接按BAT运行,才是目的与难点......
(将TXT转BAT这一步省掉)
请高手,有空练练手呀...
不过此程序还是挺适用的............
[ Last edited by cad55 on 2007-12-17 at 11:13 AM ]
|
|
2007-12-17 11:09 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
『第
2 楼』:
txt不能作为bat直接运行(主要是特殊字符和某些命令的限制),要把txt内容作为bai运行,必须转为bat
最简单的方法:more 1.txt>1.bat
[ Last edited by zh159 on 2007-12-17 at 11:19 AM ]
|
|
|
2007-12-17 11:17 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
3 楼』:
Quote: | Originally posted by zh159 at 2007-12-17 11:17 AM:
txt不能作为bat直接运行(主要是特殊字符和某些命令的限制),要把txt内容作为bai运行,必须转为bat
最简单的方法:more 1.txt>1.bat
[ Last edited by zh159 on 2007-12-17 at 11:19 AM ] |
|
谢谢应助...
不过....
俺是这样想的..但俺不会这样编...
方法一:
将TXT文件,更名BAT
运行它.
再更名回TXT.
方法二:
打开txt.用BAT将其另存为bat后,运行.
后再删除....
上述方法应可以实现.也可以有更好的方法,,,,
请高手..练练手呀.......
[ Last edited by cad55 on 2007-12-17 at 11:32 AM ]
|
|
2007-12-17 11:28 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
4 楼』:
more 1.txt>1.bat
start " " 1.bat
del 1.bat
不是太好.....,,,,,,,还是要自学......
高手有什么更好办法.....
[ Last edited by cad55 on 2007-12-17 at 11:42 AM ]
|
|
2007-12-17 11:37 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
『第
5 楼』:
Quote: | copy 1.txt 1.bat
start /wait 1.bat
del 1.bat |
|
Quote: | ren 1.txt 1.bat
start /wait 1.bat
ren 1.bat 1.txt |
|
|
|
|
2007-12-17 12:59 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
6 楼』:
Quote: | Originally posted by zh159 at 2007-12-17 12:59 PM:
|
|
回复:zh159
从BAT再转为TXT.
就错误了.
还有就是兄台之前所言:Txt语句.有些不能通过更名的方法实现转换BAT.
兄台或各行路过高手...
写一个,先将TXT引入后,再另存的方法...........而不是更名的方法.
|
|
2007-12-17 13:34 |
|
|
zh159
金牌会员
积分 3687
发帖 1467
注册 2005-8-8
状态 离线
|
『第
7 楼』:
我没说过不能通过更名的方法实现转换BAT
某些命令一般不能用BAT读取TXT方式运行,但可以把需要的BAT作为TXT存档,改名后就可以运行(BAT和TXT都是文本文件)
PS:不知道你是否了解BAT。
|
|
|
2007-12-17 16:57 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
8 楼』:
Quote: | Originally posted by zh159 at 2007-12-17 04:57 PM:
我没说过不能通过更名的方法实现转换BAT
某些命令一般不能用BAT读取TXT方式运行,但可以把需要的BAT作为TXT存档,改名后就可以运行 ... |
|
强晕
兄台,是误认为这样意思...
但直接将TXT文件,通过更改文件名的方法,是有代码转换的问题.
俺试过了.
也就是,将BAT从TXT转换,最好是另存为.
俺的意思是,
用一个BAT去选择一个TXT.
将其另存为直接按BAT运行.
但TXT自身不变..........
也等视于,将TXT按BAT运行.
.
|
|
2007-12-17 17:13 |
|
|
everest79
金牌会员
一叶枝头,万树皆春
积分 2564
发帖 1127
注册 2006-12-25
状态 离线
|
『第
9 楼』:
:TOP
SET /P file_type=.ext?
ASSOC |findstr /C:"%file_type%" /C:"%file_type:~1%file"&&GOTO TOP
FOR /F "delimst==" %%i in ('assoc') DO if "%%i" ==
SET sys_path=%systemroot%\system32\
IF NOT "%file_type:~0,1%%file_type:~4%" == "." GOTO :EOF
IF /i "%1" == "uninstall" GOTO UNINSTALL
>%sys_path%%file_type:~1%.CMD ECHO @ECHO OFF
>>%sys_path%%file_type:~1%.CMD ECHO IF NOT "%%~nx0 %%~x1" == "%file_type:~1%.cmd .%%~n0" GOTO :EOF
>>%sys_path%%file_type:~1%.CMD ECHO COPY "%%~dpnx1" "%%temp%%\%%~n1.cmd" /y
>>%sys_path%%file_type:~1%.CMD ECHO Start /b "%%temp%%\%%~n1.cmd"
>>%sys_path%%file_type:~1%.CMD ECHO pause
ASSOC %file_type%=%file_type:~1%file
FTYPE %file_type:~1%file=%file_type:~1%.CMD "%%1"
REG ADD "HKEY_CLASSES_ROOT\%file_type:~1%file\DefaultIcon" /ve /d "%SystemRoot%\System32\shell32.dll,-153" /f
REG ADD "HKEY_CLASSES_ROOT\%file_type:~1%file\shell\edit\command" /ve /d "%SystemRoot%\System32\NOTEPAD.EXE %1"
GOTO :EOF
:UNINSTALL
DEL %systemroot%\system32\%file_type:~1%.CMD
REG DELETE "HKEY_CLASSES_ROOT\%file_type%" /f
REG DELETE "HKEY_CLASSES_ROOT\%file_type:~1%file" /f
ASSOC .txt=txtfile
|
|
2007-12-17 19:33 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
10 楼』:
Quote: | Originally posted by everest79 at 2007-12-17 07:33 PM:
[code]
:TOP
SET /P file_type=.ext?
ASSOC |findstr /C:"%file_type%" /C:"%file_type:~1%file"&&GOTO TOP
FOR /F "delimst==" %%i in ('assoc') DO if "%%i&qu ... |
|
楼上的.
看不懂
用不了
|
|
2007-12-17 20:57 |
|
|
everest79
金牌会员
一叶枝头,万树皆春
积分 2564
发帖 1127
注册 2006-12-25
状态 离线
|
|
2007-12-17 21:19 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
12 楼』:
Quote: | Originally posted by everest79 at 2007-12-17 09:19 PM:
百分之百解决你的问题 |
|
用不了 ,,,,,,,,,,,
|
|
2007-12-17 21:40 |
|
|
everest79
金牌会员
一叶枝头,万树皆春
积分 2564
发帖 1127
注册 2006-12-25
状态 离线
|
|
2007-12-17 21:44 |
|
|
cad55
高级用户
积分 620
发帖 329
注册 2007-12-5
状态 离线
|
『第
14 楼』:
Quote: | Originally posted by everest79 at 2007-12-17 09:44 PM:
有啥问题你贴上来哇 |
|
运行后
C:\海>SET /P file_type=.ext?
.ext?
输任意东东,
就一闪.............886..........
|
|
2007-12-17 21:46 |
|
|
everest79
金牌会员
一叶枝头,万树皆春
积分 2564
发帖 1127
注册 2006-12-25
状态 离线
|
『第
15 楼』:
嘿嘿,这里是让你输入一个扩展名,然后会根据你输入的扩展名来建立一个新的文件关联,这种文件可以双击执行如批处理一样,也可以用右键打开用记事本编辑
输入的扩展名格式为 .ext
扩展名长度为三个字母
系统内已经存在的输入无效
你可以输入个.hsb 执行完后你新建一个.hsb文件看看
|
|
2007-12-17 21:53 |
|