中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何判断是否设置过默认路径
作者:
标题: 如何判断是否设置过默认路径 上一主题 | 下一主题
bjsh
银牌会员





积分 2000
发帖 621
注册 2007-1-1
状态 离线
『楼 主』:  如何判断是否设置过默认路径

今天遇到这么一个人提了这么一个无理的要求

他源代码如下

  Quote:

@echo off
title 设置默认路径
:shezhi
set /p shezhi=请输入你的设置路径:
echo %shezhi%>123.txt
cls
echo 设置完毕,默认路径是:
echo %shezhi%
echo 按任意键进入主题
pause>nul
goto zhixing
:zhixing
set /p wo=<123.txt
echo 您想建立什么文件呢,请输入它的文件名
echo 我们将把它保存在你设置的默认目录里。
set /p wenjian=请输入文件名以及后缀(mybat.bat):
echo  >%wenjian%
echo 测试完成。
pause>nul

后来他提了个要求就是
1.批处理自动判断是否曾经设置过默认路径
2.这个保存默认路径的123.txt非得保存在默认路径里;

大家给个代码.

本人已写完;打算在五楼公布;
大家先写写试试......

[ Last edited by namejm on 2007-3-20 at 12:52 PM ]

2007-3-18 05:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
RAC
初级用户





积分 35
发帖 15
注册 2006-10-9
状态 离线
『第 2 楼』:  

装B

2007-3-18 05:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xycoordinate
中级用户




积分 493
发帖 228
注册 2007-2-16
来自 安徽
状态 离线
『第 3 楼』:  

"1.批处理自动判断是否曾经设置过默认路径"
if define ...
???

"2.这个保存默认路径的123.txt非得保存在默认路径里;"
echo %shezhi%>%shezhi%\123.txt
???

2007-3-18 06:38
查看资料  发送邮件  发短消息 网志  OICQ (226308607)  编辑帖子  回复  引用回复
bjsh
银牌会员





积分 2000
发帖 621
注册 2007-1-1
状态 离线
『第 4 楼』:  

算了还是把代码贴上来吧

@echo off
for /f "skip=31 tokens=2 delims= " %%a in (%~nx0) do set setting=%%a
set setting >nul 2>%tmp%\t_m_p.txt
find "没有定义" %tmp%\t_m_p.txt >>nul
if not errorlevel 1 goto next
goto choice
:choice
echo 1.使用默认路径 %setting%
echo 2.重新设置默认路径
set /p m_choice=请选择:
if "%m_choice%"=="1" goto setting
if "%m_choice%"=="2" goto next
echo 无效选择 请重新输入;
goto choice
:next
title 设置默认路径yo
set /p setting=请输入你的设置路径,最后请不要加\:
echo :: %setting% >>%~nx0
echo 设置完毕,默认路径是:
echo %setting%
echo 按任意键进入主题
pause>nul
goto setting
:setting
del %tmp%\t_m_p.txt >>nul
echo 您想建立什么文件呢,请输入它的文件名
echo 我们将把它保存在你设置的默认目录里。
set /p file=请输入文件名以及后缀(mybat.bat):
echo  >%setting%\%file%
echo 测试完成。
pause>nul

2007-3-18 07:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by RAC at 2007-3-18 05:27:
装B

的确是装B,唉,论坛再也没有 Willsort 时代的深入技术讨论了




C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
2007-3-18 12:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
nzisisco
初级用户





积分 107
发帖 47
注册 2007-3-3
状态 离线
『第 6 楼』:  

写这个批处理有什么意义吗 发上来干什么都不知道
不就是显示你的技术高嘛 大把人比你技术高的

2007-3-18 18:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bjsh
银牌会员





积分 2000
发帖 621
注册 2007-1-1
状态 离线
『第 7 楼』:  

我想你们是误会我的意思了;

本来我以为这是个简单的问题;但是真正写下去才知道会遇到问题;

在写这个的过程中也学到不少东西;

在一开始没把自己的代码贴上来;是因为一来怕我的代码影响大家的思维;

二是想让大家先写写;把代码发上来大家交流一下;

但是没想到却被误会为炫耀技术;我感觉特别委屈;

我是刚刚接触p的; 我注册也没多久;

在这里我一直是抱着学习的态度来的;

自己也没什么技术可言更提不上炫耀了;

只是想和大家交流下;

如果我的言语确实容易让大家产生误会;我表示歉意;对不起

2007-3-19 00:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 8 楼』:  


:top
if defined userpath (
if exist %userpath%\ (
goto :create) else (md %userpath%)
) else (set /p userpath=userpath:)
goto top

:create
set /p filename=filename:
cd.>%userpath%\%filename%
explorer /select, %userpath%\%filename%
pause


2007-3-19 02:52
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bjsh
银牌会员





积分 2000
发帖 621
注册 2007-1-1
状态 离线
『第 9 楼』:  

ls的代码相当简洁了但是不大符合题目的要求

如果换一个窗口的话;又要提醒用户输入默认路径;

题目的要求第二次运行时;已知默认路径而不再询问用户;

可能ls的在同一个cmd窗口下;因为第一次运行设置了环境变量所以第二次运行时似乎同再询问用户;

但是换一个窗口这个环境变量不存在了;所以再次运行还是会询问用户;

2007-3-19 03:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 10 楼』:  

再加这个
http://www.cn-dos.net/forum/view ... hlight=%2Beverest79

2007-3-19 14:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yzshde007
新手上路





积分 5
发帖 3
注册 2007-3-25
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by electronixtar at 2007-3-17 11:41 PM:




的确是装B,唉,论坛再也没有 Willsort 时代的深入技术讨论了

如果你觉得简单容易请你写个出来!~如果你觉得你能写出来那请你把他精简化~~~不行``别叫``

2007-4-26 00:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
digger
初级用户

游荡的孤魂



积分 79
发帖 29
注册 2007-4-2
来自 湖南
状态 离线
『第 12 楼』:  



  Quote:
Originally posted by yzshde007 at 2007-4-25 11:06 AM:
如果你觉得简单容易请你写个出来!~如果你觉得你能写出来那请你把他精简化~~~不行``别叫``

  不知 electronixtar 为何人者无所谓,不过在这里讨论还是心平气和一点的好。

2007-4-26 11:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: