① 如何用批处理写自动安装软件的脚本
1、新建一个Ergodic.txt文件然后重名成Ergodic.bat文件,然后输入前置声明:@echo off,pause。
注意事项:
目前比较常见的批处理包含两类:DOS批处理和PS批处理。PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本;而DOS批处理则是基于DOS命令的。
② 求批处理脚本 用于生成文件列表
1.tree
/f
>>你起的文件名.txt
2.tree
>>xxx.txt
3.dir
>>xxx.txt
4.dit
/w
>>xxx.txt
这几个都可以
像/f
/w这些是对应批处理命令的开关
就是参数
/?是查所有的参数
>>命令是把所有执行结果
就是执行后屏幕显示内容写入一个文件
用的是追加的方式
>命令是新建立,如果存在即覆盖。
如果你想用批处理
.bat的话
就建立一个文本文档
右击---编辑
cd\
E:
cd
E:\DIABLO
3\Diablo
III
dir
>>
fileT.txt
pause
```````````
如果只想显示当前文件夹下的文件名
dir
/w>>file.txt
或者
dir
>>file.txt
什么的都行
结束保存,把该文本文档的扩展名改为.bat
③ 批处理脚本
A B.exe X.bat这三个文件或文件夹要放在一起,除非你定义好它们的绝对路径。
找不到文件是因为你的C.exe不是在每一个盘里都存在,第一个for语句中我设置了4个盘符c d e f,C.exe不是在每个盘里都有,所以有出错的提示,但不影响已经找到的盘。
错了,你只要定义头三个set 语句,别的语句不要动。别的语句全是变量,不用管它。
网络hi聊,这样累不累啊
@echo off
setlocal enabledelayedexpansion
set "a=A"
set "b=B.exe"
set "c=C.exe"
for %%a in (c d e f) do (
for /f "delims=" %%b in ('dir /a /s /b "%%a:\!c!"') do (
echo %%~dpb
x /e /s /y "!a!" "%%~dpb"
/y "!b!" "%%~dpb"
cd /d "%%~dpb"
start "" "!b!"
)
)
有什么问题可以网络hi我,我一般都挂在线上。
④ 如何使用 脚本文件 或者 批处理文件 处理txt 中部分数据
这个要专门定制脚本的,可以实现! 但是需要钱钱的,我可以有偿服务,联系的方式在下面
下面是QQ 把拼音翻译成数字就可以了
si jiu wu ling si si ba lin si
按照你的描述价钱100起的,接受才加哦! 如果有其他特殊要求另议
⑤ 关于BAT批处理脚本的问题...急!!!!
常用命令
echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。
==== 注 ===========
首先, @ 不是一个命令, 而是DOS 批处理的一个特殊标记符, 仅用于屏蔽命令行回显. 下面是DOS命令行或批处理中可能会见到的一些特殊标记符:
CR(0D) 命令行结束符
Escape(1B) ANSI转义字符引导符
Space(20) 常用的参数界定符
Tab(09) ; = 不常用的参数界定符
+ COPY命令文件连接符
* ? 文件通配符
"" 字符串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回显屏蔽符
/ 参数开关引导符
: 批处理标签引导符
% 批处理变量引导符
其次, :: 确实可以起到rem 的注释作用, 而且更简洁有效; 但有两点需要注意:
第一, 除了 :: 之外, 任何以 :开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容, 只是为了与正常的标号相区别, 建议使用 goto 所无法识别的标号, 即在 :后紧跟一个非字母数字的一个特殊符号.
第二, 与rem 不同的是, ::后的字符行在执行时不会回显, 无论是否用echo on打开命令行回显状态, 因为命令解释器不认为他是一个有效的命令行, 就此点来看, rem 在某些场合下将比 :: 更为适用; 另外, rem 可以用于 config.sys 文件中.
=====================
echo 表示显示此命令后的字符
echo off 表示在此语句后所有运行的命令都不显示命令行本身
@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。
call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。
pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续
rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。
==== 注 =====
此处的描述较为混乱, 不如直接引用个命令的命令行帮助更为条理
-------------------------
ECHO
当程序运行时,显示或隐藏批处理程序中的正文。也可用于允许或禁止命令的回显。
在运行批处理程序时,MS-DOS一般在屏幕上显示(回显)批处理程序中的命令。
使用ECHO命令可关闭此功能。
语法
ECHO [ON|OFF]
若要用echo命令显示一条命令,可用下述语法:
echo [message]
参数
ON|OFF
指定是否允许命令的回显。若要显示当前的ECHO的设置,可使用不带参数的ECHO
命令。
message
指定让MS-DOS在屏幕上显示的正文。
-------------------
CALL
从一个批处理程序中调用另一个批处理程序,而不会引起第一个批处理的中止。
语法
CALL [drive:][path]filename [batch-parameters]
参数
[drive:][path]filename
指定要调用的批处理程序的名字及其存放处。文件名必须用.BAT作扩展名。
batch-parameters
指定批处理程序所需的命令行信息。
-------------------------------
PAUSE
暂停批处理程序的执行并显示一条消息,提示用户按任意键继续执行。只能在批处
理程序中使用该命令。
语法
PAUSE
REM
在批处理文件或CONFIG.SYS中加入注解。也可用REM命令来屏蔽命令(在CONFIG.SYS
中也可以用分号 ; 代替REM命令,但在批处理文件中则不能替代)。
语法
REM [string]
参数
string
指定要屏蔽的命令或要包含的注解。
=======================
例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS等功能。
批处理文件的内容为: 命令注释:
@echo off 不显示后续命令行及当前命令行
dir c:\*.* >a.txt 将c盘文件列表写入a.txt
call c:\ucdos\ucdos.bat 调用ucdos
echo 你好 显示"你好"
pause 暂停,等待按键继续
rem 准备运行wps 注释:准备运行wps
cd ucdos 进入ucdos目录
wps 运行wps
批处理文件的参数
批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符"%"。
%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。
例2:C:根目录下有一批处理文件名为f.bat,内容为:
@echo off
format %1
如果执行C:\>f a:
那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:
例3:C:根目录下一批处理文件名为t.bat,内容为:
@echo off
type %1
type %2
那么运行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
于是上面的命令将顺序地显示a.txt和b.txt文件的内容。
==== 注 ===============
参数在批处理中也作为变量处理, 所以同样使用百分号作为引导符, 其后跟0-9中的一个数字构成参数引用符. 引用符和参数之间 (例如上文中的 %1 与 a: ) 的关系类似于变量指针与变量值的关系. 当我们要引用第十一个或更多个参数时, 就必须移动DOS 的参数起始指针. shift 命令正充当了这个移动指针的角色, 它将参数的起始指针移动到下一个参数, 类似C 语言中的指针操作. 图示如下:
初始状态, cmd 为命令名, 可以用 %0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
经过1次shift后, cmd 将无法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
经过2次shift后, arg1也被废弃, %9指向为空, 没有引用意义
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8
遗憾的是, win9x 和DOS下均不支持 shift 的逆操作. 只有在 nt 内核命令行环境下, shift 才支持 /n 参数, 可以以第一参数为基准返复移动起始指针.
=================
⑥ 用批处理执行sql文件的脚本应该怎么写
步骤:(1) 创建一个批处理文件:打开记事本,创建数据库连接信息(例如,server name,username,password,databasename等)以及要执行的*.sql脚本名称。具体语法参考下文"osql 实用工具" 。 将文件的扩展名改为.bat 并保存。
示例1:指定待执行sql 文件的相对路径
osql -S admin\admin -U sa -P sa -d TestDB -i c:\test.sql
pause
示例2: 待执行文件与bat文件在同一个目录,指定相对路径
set localdir=%~dp0
osql -S (local) -U sa -P sa -d Test -i %localdir%\test1.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test2.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test3.sql
pause
(2) 创建需要执行的sql 脚本, test.sql,test2.sql 和test3.sql, 并放在步骤(1)示例1中指定的位置。本例为c:\ 根目录。如果用示例2,将待执行的sql和bat文件放在同一个目录下。
(3) 双击*.bat 文件并查看运行结果。
⑦ 用批处理脚本如何提取多个txt文本中含指定字符串/关键词的行,并写入一个新的Excel文件中
BAT与源文件放在一起执行。
导出TXT,自行用EXCEL打开另存。
导出的TXT与源文件不要放在同一目录。
@echooff
(for/f"delims="%%ain('dir/a-d/s/b*.txt')dofor/f"delims="%%bin('type"%%a"^|find/i"error"')doecho;%%~na%%b)>"D:out.TXT"
⑧ 批处理 脚本
一个B.exe X.bat你想放在一起,除非你确定他们的绝对路径这三个文件或文件夹。
找不到该文件,因为你C.EXE在每个托盘是不存在的,第一个是我CDEF设置四个字母的声明,C.EXE不是在每个托盘有这么有错误的提示,但不影响磁盘已被发现。
错了,只要你定义的前三组语句,其他语句不动。其他语句都是变量,不用管它。
网络hi和聊天,好累啊
关闭@ echo
SETLOCAL enabledelayedexpansion
集“A = A”
集“B = B.exe “
集”C = C.EXE“在(CDEF)%%一个
做(
FOR / F”delims =“%%B在('DIR / A / S / B“%%一:!\ C”“!一个”')做(
回声%%DPB
的x / E / S / Y“%%DPB”
复制/ Y“!b!”“%%DPB”
CD / D“%%DPB”
开始“”;“!B”
)
)
有什么问题可以网络Hi我,我通常挂就行了。
⑨ Windows中如何使用批处理脚本编译代码
系统调用CMD程序,按照批处理设置的顺序逐条运行命令.这些命令实际上也就是一个个的程序,如果某些程序不存在就无法运行.
⑩ 如何使用批处理执行python脚本,并把python脚本的控制台日志输出到一个log文件中
1, 用绝对路径试试:D:\logs\log.txt;
2, 最后的exit去掉试试,反正最后一行执行完也会自然退出。
3, 另写一个简单的python测试脚本,里面只有一行 print 'Hello World', 然后用上述批处理执行一下看看log对不对。