楼 主
一段获取 ip 的 for 语句 总是出错 请大家帮忙
发表于 2009-02-13 14:22 · 中国 广东 茂名 电信
初级用户
★
积分 42 发帖 23 注册 2006-02-13 04:23 20年会员 UID 50270
状态 离线
@echo off
cls
setlocal enabledelayedexpansion
FOR /F "tokens=2,3* usebackq delims=:" %%i IN (`ipconfig^|findstr /i "ss"`) DO (
echo %%i abcde
)
执行以后
abcde68.1.178
为什么 abcde 跑到 ip 前面了呢
———————————————————————
转移自 DOS疑难解答 & 问题讨论 (解答室)
明显发错版块,予以扣分处理。
——管理员
———————————————————————
本帖最近评分记录
(共 1 条)
点击查看详情
评分人 分数 时间
DOSroot
-6
2009-02-13 14:56
第 2 楼
发表于 2009-02-13 14:51 · 中国 广东 茂名 电信
初级用户
★
积分 42 发帖 23 注册 2006-02-13 04:23 20年会员 UID 50270
状态 离线
@echo off
cls
for /f "delims=: tokens=1,2" %%a in ('ipconfig ^|findstr /i IP') do (
echo %%b asdf
set IP=%%b
)
echo %ip% asdf
虽然找到解决方案 不过还没想明白
第 3 楼
发表于 2009-02-13 14:59 · 中国 广东 茂名 电信
初级用户
★
积分 42 发帖 23 注册 2006-02-13 04:23 20年会员 UID 50270
状态 离线
第 4 楼
发表于 2009-02-13 15:04 · 中国 广东 茂名 电信
初级用户
★
积分 42 发帖 23 注册 2006-02-13 04:23 20年会员 UID 50270
状态 离线
找到原因了 延迟变量 !! 这两天老是遇到 同类的问题 怪异了
第 5 楼
发表于 2009-02-13 15:07 · 美国 华盛顿州 金 雷德蒙德 Microsoft
初级用户
★★
积分 100 发帖 93 注册 2009-01-14 15:04 17年会员 UID 136661 性别 男 来自 湖南
状态 离线
变量延迟的问题是个老问题了,如果不设置延迟的话,它总是寻找它之前设置的值,即第一次的赋值,如果没有,那它就是空值。
每次setlocal enabledelayedexpansion要记得在 enlocal,而且总是在文件的开始设置变量延迟,其实不好。
第 6 楼
发表于 2009-02-13 15:26 · 中国 上海 电信
管理员
★★
积分 389 发帖 198 注册 2008-09-23 12:00 17年会员 UID 126405 性别 男
状态 离线
Originally posted by pighead123 at 2009-2-13 14:59:
http://www.cn-dos.net/forum/viewthread.php?tid=46028&fpage=1
管理员真傻
你说的那个例子没错,实际上我已经是尽量手下留情了,已经是尽可能往好的方面考虑了,只要是有可能在 DOS 下实行的就视作是 DOS 下的问题。而且,如果有人所提问题一开始没有说明环境,是可以在 DOS 下实行的,你也不能一开始就主观的认为他就是想在 CMD 下执行。而从你的例子来看,你的这些语句和某些命令是明显只有在 Windows 的命令行下才可以使用的。
另外,如果对我有意见可以提,如果是我管理失误和错误也可以纠正,但如果口中大放厥词的话别怪我不客气。
第 7 楼
发表于 2009-02-13 15:30 · 中国 广东 茂名 电信
初级用户
★
积分 42 发帖 23 注册 2006-02-13 04:23 20年会员 UID 50270
状态 离线
我发帖的时候考虑到 说不清楚的 问题 所以特意写的清楚一些
DOS疑难解答 & 问题讨论 (解答室)
大家如果有任何DOS实际使用上的问题,尤其是DOS的实用技术方面的疑难问题(例如DOS系统或软件使用故障等),
for 命令就是属于 dos 的 使用问题 这一点也没错 也属于bat的
还有你的什么不客气 你想不客气 你就不客气 随你的便 大不了注册一个新 id
你能吓到谁?
第 8 楼
发表于 2009-02-13 15:33 · 中国 上海 电信
管理员
★★
积分 389 发帖 198 注册 2008-09-23 12:00 17年会员 UID 126405 性别 男
状态 离线
for 命令当然是 DOS 下的命令,但 Windows 下也有 for 命令,但你的使用环境是什么,你自己回答一下。
照你这么说你骂人还有理了?你想怎么样随便你,只要我有空可以陪你玩玩。
第 9 楼
发表于 2009-02-13 15:53 · 中国 广东 茂名 电信
初级用户
★
积分 42 发帖 23 注册 2006-02-13 04:23 20年会员 UID 50270
状态 离线
此帖被 -6 点积分 点击查看详情
评分人:【 DOSroot 】 分数: -6 时间:2009-2-13 14:56
先不要说别人骂你 你看 第一帖 是你对别人先做了不敬的手势 我没空陪你玩
第 10 楼
发表于 2009-02-13 16:18 · 中国 上海 电信
管理员
★★
积分 389 发帖 198 注册 2008-09-23 12:00 17年会员 UID 126405 性别 男
状态 离线
呵呵,这个任何一个被扣分的帖子都会出现这个图标提示,不是我特意针对你一个人制作的,你可以随便看看任何一个被扣分的帖子都是这样的。DOS 论坛的评分系统从一开始就是这样的,没什么奇怪的。而且这个手势也没什么不敬,又不是竖中指。我非常奇怪,作为一个已经注册了三年的会员怎么连这个都不清楚?而且你以前还注册过的。
第 11 楼
发表于 2009-02-13 18:59 · 美国 华盛顿州 金 雷德蒙德 Microsoft
初级用户
★★
积分 100 发帖 93 注册 2009-01-14 15:04 17年会员 UID 136661 性别 男 来自 湖南
状态 离线
和谐嘛。最重要的就是和谐,不要为了一点小事就这样,讨论技术讨论技术,扣分有扣分的道理,说明白就可以了,以后注意就是勒。如果自己有什么理由也可以说出来,可以发消息。
多说无益
第 12 楼
发表于 2009-02-13 23:00 · 中国 重庆 电信
版主
★★★★★
积分 9,023 发帖 5,017 注册 2007-05-31 19:39 19年会员 UID 89899 性别 男
状态 离线
可能管理员是根据你的代码内容来判断是DOS还是CMD的吧,因为CMD有很多特性在DOS下是没有的。
如果对管理员的操作有疑问,可以到意见反馈版块向其它管理员投诉,侮辱他人总是不太好的。如果所有管理员都官官相卫,你又实在觉得这个论坛不咋地,可以到其它批处理论坛去玩玩,学习嘛,在哪里都一样,重要的是大家在一起学习的要快乐。
如果5楼的回复还没有解决你的问题,大家可以在讨论。
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正