中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-06 21:48
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何用P处理生成P处理? 查看 913 回复 10
楼 主 如何用P处理生成P处理? 发表于 2007-12-10 17:41 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
19年会员
UID 83597
性别 男
状态 离线
我想实现用P处理生成大型P处理程序,我原来写的程序都是由N多小程序组成的,由一个主程序统一调用,代码也太杂乱,由于在P里面生成VBS,INF,INI,HTML,BAT等多种格式代码,一直没能用P生成.希望能帮忙的帮我实现下!~代码如下:

希望用P生成如下内容的P

原来的P是这样调用的 call 硬盘守护者.bat....
预先写好硬盘守护者.bat的代码,现在希望直接在P里面生成如下程序,别告诉我用>>来实现....

@echo ****************************************************************
@echo # #
@echo #       欢迎使用权限设置程序 #
@echo # #
@echo ****************************************************************
@echo.
@echo 请输入以下选项前面的数字
@echo.
@echo 1,设置C:windows/system32访问权限 2,设置C盘访问权限
@echo.
@echo 3,设置D盘访问权限 4,设置E盘访问权限 5,设置F盘访问权限
@echo.
@echo 6,设置U盘访问权限(需要将U盘插拔) 7,关于作者说明
@echo.
@echo 8,返回硬盘守护者 9,退出本程序
@echo.
set /p UserSelection=输入您的选择(1、2、3、4、5、6、7、8、9 )
if "%UserSelection%"=="1" goto system32
if "%UserSelection%"=="2" goto C
if "%UserSelection%"=="3" goto D
if "%UserSelection%"=="4" goto E
if "%UserSelection%"=="5" goto F
if "%UserSelection%"=="6" goto U
if "%UserSelection%"=="7" goto zuozhe2
if "%UserSelection%"=="8" goto yinpan
if "%UserSelection%"=="9" goto here
goto quanxian

:system32
@echo off
color 0A
cls
title 权限设置C:windows/system32--by 逍遥@浪子@
@echo *****************************************************************
@echo # #
@echo #       欢迎设置C:windows/system32访问权限 #
@echo # #
@echo # NTFS格式是WinXP推荐使用的格式。转换为NTFS格式能提高硬盘存储的 #
@echo # #
@echo # 效率,并可设置访问权限以保护文件。但NTFS格式的分区在DOS/WIN9X #
@echo # #
@echo # 下均不能被识别,可能会给初级用户造成不便。如无必要请不要转换。#
@echo *****************************************************************
@echo.
@echo 请输入以下选项前面的数字
@echo.
@echo 1,设置访问权限 2,解除权限限制 3,返回权限设置 4, 退出本程序
@echo.
set /p UserSelection=输入您的选择(1、2、3、4 )
if "%UserSelection%"=="1" goto xianzhi
if "%UserSelection%"=="2" goto jiechu
if "%UserSelection%"=="3" goto quanxian
if "%UserSelection%"=="4" goto here
goto system32
2 发表于 2007-12-10 18:55 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
Originally posted by luckboy45 at 2007-12-10 17:41:
别告诉我用>>来实现....


开始吧,我就认为不就>> 原来楼主奇思怪想~,我没想到这种做法但是我应该做到了

@echo off
more +31 <"%~f0">%random%.bat
@echo ****************************************************************
@echo # #
@echo #       欢迎使用权限设置程序 #
@echo # #
@echo ****************************************************************
@echo.
@echo 请输入以下选项前面的数字
@echo.
@echo 1,设置C:windows/system32访问权限 2,设置C盘访问权限
@echo.
@echo 3,设置D盘访问权限 4,设置E盘访问权限 5,设置F盘访问权限
@echo.
@echo 6,设置U盘访问权限(需要将U盘插拔) 7,关于作者说明
@echo.
@echo 8,返回硬盘守护者 9,退出本程序
@echo.
set /p UserSelection=输入您的选择(1、2、3、4、5、6、7、8、9 )
if "%UserSelection%"=="1" goto system32
if "%UserSelection%"=="2" goto C
if "%UserSelection%"=="3" goto D
if "%UserSelection%"=="4" goto E
if "%UserSelection%"=="5" goto F
if "%UserSelection%"=="6" goto U
if "%UserSelection%"=="7" goto zuozhe2
if "%UserSelection%"=="8" goto yinpan
if "%UserSelection%"=="9" goto here
goto quanxian

:system32
@echo off
color 0A
cls
title 权限设置C:windows/system32--by 逍遥@浪子@
@echo *****************************************************************
@echo # #
@echo #       欢迎设置C:windows/system32访问权限 #
@echo # #
@echo # NTFS格式是WinXP推荐使用的格式。转换为NTFS格式能提高硬盘存储的 #
@echo # #
@echo # 效率,并可设置访问权限以保护文件。但NTFS格式的分区在DOS/WIN9X #
@echo # #
@echo # 下均不能被识别,可能会给初级用户造成不便。如无必要请不要转换。#
@echo *****************************************************************
@echo.
@echo 请输入以下选项前面的数字
@echo.
@echo 1,设置访问权限 2,解除权限限制 3,返回权限设置 4, 退出本程序
@echo.
set /p UserSelection=输入您的选择(1、2、3、4 )
if "%UserSelection%"=="1" goto xianzhi
if "%UserSelection%"=="2" goto jiechu
if "%UserSelection%"=="3" goto quanxian
if "%UserSelection%"=="4" goto here
goto system32
第一高手 第二高手

3 发表于 2007-12-10 19:48 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
19年会员
UID 83597
性别 男
状态 离线
呵呵,感谢楼上的朋友,我试后有用再来谢你!~
4 发表于 2007-12-10 20:13 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
19年会员
UID 83597
性别 男
状态 离线
实现是可以实现了,但光加 more +1 <"%~f0">%random%.bat
会生成随机6位.BAT,你这个+31貌似是从31行往下代码全部输出的意思

十分感谢你的热情回复,我的想法是出奇的怪,我的代码是生成好几个BAT的啊

看你这么热情的帮助我,希望我们能QQ上聊,我QQ:422547345

因为我写的P都是大型的,我将提供源代码给你,麻烦帮我实现生成就可以了,希望你能帮助我,我的朋友!~

[ Last edited by luckboy45 on 2007-12-10 at 08:14 PM ]
5 发表于 2007-12-10 20:32 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
想生成几个就echo...>>...几个,有何难处?
6 发表于 2007-12-10 21:05 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
不好意思我不聊QQ的
第一高手 第二高手

7 发表于 2007-12-11 18:57 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
19年会员
UID 83597
性别 男
状态 离线
汗...那么实现在太遗憾了,我看样子是无法写出那东西了....能拜托你写出代码么?

比如我啊要将从第2行将代码到第25行输出到123.BAT,将第26行到56行输出到456.BAT,将57行到90行输出到789.BAT

希望能不吝啬赐教,我是成心想学点东西,劳烦你能帮忙做下注释

我不需要点石成金的金子,而是需要那手指头,麻烦你了,我的朋友!~
8 发表于 2007-12-11 22:24 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
Originally posted by luckboy45 at 2007-12-11 18:57:
汗...那么实现在太遗憾了,我看样子是无法写出那东西了....能拜托你写出代码么?

比如我啊要将从第2行将代码到第25行输出到123.BAT,将第26行到56行输出 ...

参考:
http://www.cn-dos.net/forum/viewthread.php?tid=28671&fpage=1&highlight=readline%2Blxmxn
9 发表于 2007-12-12 17:31 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
19年会员
UID 83597
性别 男
状态 离线
谢谢了,但我要的是输出指定行啊,你这个貌似是读取吧.....

再说,我是要程序在原程序里生成,不是要别的程序来调用啊...

真可惜自己不会VB,要是写VB的话,就可以自由调用了.....
10 发表于 2007-12-12 18:37 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
RE luckboy45:

这个还是可以集成进你自己的脚本当中去的,然后再call这个函数即可。

对于你说的
谢谢了,但我要的是输出指定行啊,你这个貌似是读取吧.....

加一个重定向符号就可以输入到指定的文件了。
11 发表于 2007-12-12 20:36 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
19年会员
UID 83597
性别 男
状态 离线
我要是有你这么厉害就不用来这里发贴了,对于你那个P,我也是半懂不懂的,我有你Q的,大哥,我是逍遥@浪子@,明天我会麻烦你帮我修改我的作品的,谢谢你的热情帮助,对于P处理,我懂点皮毛,还要向各位学习啊!~
论坛跳转: