中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-08 11:20
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何用变量取得本机ip 查看 779 回复 9
楼 主 如何用变量取得本机ip 发表于 2008-04-30 10:32 ·  中国 浙江 杭州 电信
初级用户
积分 24
发帖 10
注册 2007-08-13 19:27
18年会员
UID 95069
性别 男
状态 离线
我想用本机ip和本机时间作为一个新建文件的文件名,
但不知道如何把本机ip赋值给变量

时间

set a=%date:~0,10%
set b=%time:~0,8%
echo %a%_%b%>2.txt

取得本机ip
echo for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do echo %%i
但不知道怎么将这个值给变量C
2 发表于 2008-04-30 10:54 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
set c=%%i
3 发表于 2008-04-30 11:17 ·  中国 浙江 杭州 电信
初级用户
积分 24
发帖 10
注册 2007-08-13 19:27
18年会员
UID 95069
性别 男
状态 离线
不行的

set a=%date:~0,10%
set b=%time:~0,8%
echo for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip

address"') do echo %%i
set c=%%i

echo %c%(%a%_%b%)>2.txt
2.txt里面是
%i (2008-04-30_11:04:06)
4 发表于 2008-04-30 11:29 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
set a=%date:~0,10%
set b=%time:~0,8%
echo for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do set c=%%i
echo %c%
5 发表于 2008-04-30 11:43 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
把你IPconfig 的信息发来看看
6 发表于 2008-04-30 11:52 ·  中国 湖南 娄底 电信
银牌会员
★★★
积分 2,268
发帖 879
注册 2006-12-19 16:23
19年会员
UID 73968
性别 男
状态 离线
echo for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do set c=%%i
这一句能给 c 赋值吗????
致精致简!
7 发表于 2008-04-30 12:51 ·  中国 浙江 杭州 电信
初级用户
积分 24
发帖 10
注册 2007-08-13 19:27
18年会员
UID 95069
性别 男
状态 离线
Originally posted by 26933062 at 2008-4-30 11:52 AM:
echo for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do set c=%%i
这一句能给 c 赋值吗????

这个时错误的

[ Last edited by ken0137 on 2008-4-30 at 12:54 PM ]
8 发表于 2008-04-30 13:06 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
试试这个

@echo off
for /f "delims=: tokens=2" %%i in ('ipconfig^|findstr /ic:"ip address"') do (
set IP=%%i &&call :lp
)
:lp
if not exist %IP% md %IP%
9 发表于 2008-04-30 13:11 ·  中国 浙江 杭州 电信
初级用户
积分 24
发帖 10
注册 2007-08-13 19:27
18年会员
UID 95069
性别 男
状态 离线
可以了,谢谢~~~~~~~~~
10 发表于 2008-04-30 13:39 ·  中国 浙江 杭州 电信
初级用户
积分 24
发帖 10
注册 2007-08-13 19:27
18年会员
UID 95069
性别 男
状态 离线
可以取得变量,但是
for /f "delims=: tokens=2" %%i in ('ipconfig^|findstr

/ic:"ip address"') do (
set IP=%%i
)
echo off
echo open 192.168.55.23 2121>a
echo er>>a
echo erw234>>a
echo bin>>a
echo put D:\log\ty_1.txt /上传文件

夹/0852/log/%IP%txt>>a
echo bye >>a
ftp -s:a
pause
这样以ip为文件名,上传时无法创建文件
不知道为什么?
论坛跳转: