中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-09 02:23
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » [出题]娱乐一下~
可打印版本  2,081 / 27
第16楼 HAT 发表于 2008-06-20 16:51
版主 发帖 5,017 积分 9,023
Originally posted by pusofalse at 2008-6-20 04:43 PM:
两位前辈的思路。。真是太棒了~
虽说出题,但里面有几道题我也不会~
第8楼,hat前辈的第一段代码。。。输出所有以abcd开头的行~ 貌似有点思维定向了~

改变一下思维可以吗?
第17楼 pusofalse 发表于 2008-06-20 17:46
银牌会员 发帖 646 积分 1,604
1.因为不会用errorlevel,所以只能用笨办法了。
for /f "delims=" %%a in ('net user^|findstr "123"') do (
for %%i in (%%a) do (
if "%%i" equ "123" set user=123
))
if not defined user net user 123 "123 &^" /add

2.跟hat前辈的完全一样。。
3.for /l %%a in (1000 1 1999) do set var=%%a&>>num.txt call,echo %%var:~1%%

set n=-1
:1
set/a n+=1
set m=0000%n%
>>num.txt echo %m:~-3%
if %n% lss 999 goto 1
pause>nul

4.
call :lp tcp 7
call :lp udp 6
pause&goto :eof
:lp
for /f "skip=4 tokens=3,%2 delims=: " %%a in ('netstat -anop %1') do echo %%a &tasklist /fi "pid eq %%b"

5.又跟HAT前辈想一块去了。。

6.开启5个进程同时ping 进程1ping1-10 进程2 ping 11-20 用start给每个进程传递主机ID的参数。。。当然只ping1次

7。
@echo off
:1
set/a n+=1
if %n% gtr 9 pause>nul&exit
for /l %%a in (1 1 %n%) do call :lp %%a %n%

:lp
set/a res=%1*%2
set/p=%1*%2=%res% <nul
if %1 equ %2 (echo.&goto 1) else goto :eof

8:
不会用sort,再用笨办法- -|||
setlocal enabledelayedexpansion
for /f "delims=" %%a in (1.txt) do set/a n+=1&set !n!=%%a
for /l %%i in (%n% -1 1) do echo !%%i!
pause>nul

9:输入任意字母,然后新建文件,分别以这些个字母命名,然后dir/b/on一下

10.
@echo off
setlocal enabledelayedexpansion
for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
set/a n+=1
set %%a=!n!
)
set/p var=
for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do set var=!var:%%a=%%a !
echo %var%
pause
for %%a in (%var%) do set/a res+=!%%a!
echo %res%
pause>nul
第18楼 pusofalse 发表于 2008-06-20 17:48
银牌会员 发帖 646 积分 1,604
这是我的解题思路
汗。。。我何时发了两次。。。- -|||

[ Last edited by pusofalse on 2008-6-20 at 06:41 PM ]
第19楼 PPdos 发表于 2008-06-20 21:02
高级用户 发帖 268 积分 783
第四题较有挑战性 我单发一帖吧
第20楼 pusofalse 发表于 2008-06-20 21:13
银牌会员 发帖 646 积分 1,604
第四题,我觉得必须用pid作为中介。。。不知还有没有别的方法。。。
第21楼 wxcute 发表于 2008-06-21 23:35
中级用户 发帖 211 积分 458
Q3:输出000-999到num.txt,最少两种方法

只写了一种(通用,max为最大值,改成你要的数字就行。)
第22楼 bat-zw 发表于 2008-06-21 23:43
金牌会员 发帖 1,276 积分 3,105
Originally posted by wxcute at 2008-6-21 23:35:
Q3:输出000-999到num.txt,最少两种方法

只写了一种(通用,max为最大值,改成你要的数字就行。)
@echo off
cd/d %~dp0

cd.>num.txt
set/a n=0
set/a x=1
s ...

我晕,楼上的是不是搞得太复杂了,本来一句命令就可以搞定的,如下:

或者:


[ Last edited by zw19750516 on 2008-6-21 at 11:51 PM ]
第23楼 wxcute 发表于 2008-06-22 12:57
中级用户 发帖 211 积分 458
回zw19750516
我是想让P自动计算位数,如:

max=9就输出0-9
max=14就输出00-14
max=495就输出000-495
第24楼 26933062 发表于 2008-06-22 13:09
银牌会员 发帖 879 积分 2,268
::输出第一个以abcd开头的行

::输出第二个以abcd开头的行


Q7:输出九九乘法表

Q8:倒序输出a.txt中的内容,当a.txt内容位数不一样时就不能用sort了。

Q9:字母排序,输入任意字母,进行排序 如输入z a u i b,则输出 a b i u z

Q10:计算任意字母之和
第25楼 HAT 发表于 2008-06-22 19:06
版主 发帖 5,017 积分 9,023
Originally posted by 26933062 at 2008-6-22 01:09 PM:
Q9:字母排序,输入任意字母,进行排序 如输入z a u i b,则输出 a b i u z



Nice job!
第26楼 qzwqzw 发表于 2008-06-23 13:39
银牌会员 发帖 636 积分 2,343
Q1:判断系统中有无123用户,无则添加用户名为123,密码为"123 &^"的普通用户
直接利用应用程序自己的错误处理就可以了
net user 123 "123 &^" /add

Q2:
a.txt:
abcdefg
123abcd
abcd123
abcdefg
asdfghabcda
1234

输出a.txt中所有以abcd开头的行
findstr "^abcd" a.txt

输出第一个以abcd开头的行
findstr "^abcd" a.txt>tmp.dat
set /p tmp=<tmp.dat
echo %tmp%

输出第二个以abcd开头的行
for /f "tokens=1* delims=:" %%i in ('findstr "^abcd" a.txt^|findstr /n ".*"^|findstr "^2:"') do echo %%j
第27楼 qzwqzw 发表于 2008-06-23 13:56
银牌会员 发帖 636 积分 2,343
Q3:输出000-999到num.txt,最少两种方法

for /l %%i in (0,1,9) do for /l %%j in (0,1,9) do for /l %%k in (0,1,9) do echo %%i%%j%%k>>num.txt

if "%1"=="$$$" (>>num.txt echo %2) else (for /l %%i in (0,1,9) do call %0 $%1 %2%%i)

[ Last edited by qzwqzw on 2008-6-23 at 02:02 PM ]
第28楼 qzwqzw 发表于 2008-06-23 14:27
银牌会员 发帖 636 积分 2,343
Q4:输入端口号,输出对应进程。如输入135,则输出svchost.exe的详细信息,要求代码同时兼容TCP与UDP端口

for /f "tokens=1-3,*" %%a in ('netstat -ano^|find ":123 "') do echo.%%a %%b %%c & tasklist /v /fi "pid eq %%d"
或者

netstat -ab
上一页  1 2
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023