返回列表 发帖
@echo off
goto :b
:a
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net
:b
call :a>> a.txt 2>&1
pause>nulCOPY

TOP

@echo off
@echo off
(echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net) 1>t.txt 2>&1COPY


[ 本帖最后由 qq106942397 于 2010-7-28 21:43 编辑 ]

TOP

为了使代码具有良好的可读性、健壮性,实现高内聚、低耦合,我费尽脑汁历尽千辛万苦终于写成了,写的不好,各位前辈们别嘲笑我哈。。。
@echo off
set /a c+=1
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net
if %c%==1 call %0 >>a.txt 2<&1COPY
如有错误,还请多多批评指正,晚辈不才,在此多谢了。。。

TOP

各位代码中的2>&1
是啥含义 请告知谢谢

TOP

for /f "delims=" %%a in ('more +1 "%~nx0"') do (%%a >>a.txt)&(%%a 2>>a.txt)
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.netCOPY

[ 本帖最后由 vincentzhou 于 2011-1-1 00:40 编辑 ]
only the strong survive!

TOP

@echo off
echo, 1>nul 3>a.txt
echo, 2>nul 4>&1
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net
看得多说得多,远比不上写得多。

TOP

我来看看 刚来 还不是很懂啊

TOP

修改了三楼的方案,加上" ^" 可以完整的输出>nul
@echo off
>a.txt echo 批处理之家
>>a.txt echo Link2Bathome
>>a.txt echo set /p=不要想当然,回到正途吧。^>nul
>>a.txt echo BBS.bathome.net
pause>nul

TOP

echo echo 批处理之家 >>a.txt
echo Link2Bathome >>a.txt
echo set/p=不要想当然,回到正途吧。^<nul >>a.txt
echo echo BBS.bathome.net >>a.txtCOPY
不知道这样符合题目要求不
菜鸟一个,潜心学习
总有学会的一天

TOP

1# wxcute
@echo off
(
echo echo 批处理之家
echo Link2Bathome
echo set/p=不要想当然,回到正途吧。^<nul
echo echo BBS.bathome.net
)>a.txt
pauseCOPY

TOP

回复 19# leap
我也看了半天纠结中。
查了一下,

2代表运行出错
>输出重定向
&1代表正确运行时输出的文件,这里是a.txt
连起来的意思是把运行错误的信息也输入到运行正确的输出文件中。
如果没有这段,那么前面的代码中运行出错的行将不会输出到a.txt
就是这样子的。

TOP

多看看果然好,有知道了一个2>&1的作用了,把标准错误重定向到标准输出,这样就能显示错误反馈信息了

TOP

cd.>a.txt
(
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net
) 1>>a.txt 2>&1COPY

TOP

@echo off
>a.txt (
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net
)

TOP

@echo off
call :sub > a.txt
:sub
echo 批处理之家
Link2Bathome
set/p=不要想当然,回到正途吧。<nul
echo BBS.bathome.net

TOP

返回列表