中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-23 12:26
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]set /p 多出2個字符,求解
可打印版本  2,651 / 6
第1楼 Lying 发表于 2010-09-25 15:18
新手上路 发帖 20 积分 19
[求助]set /p 多出2個字符,求解
set /p Code=Please scan Code:
echo %code% >my.txt

當我輸入123后,發現my.txt中換行了,且多出2字符,實在不知怎么回事,請各位大俠指點一二,能否避開多出的字符,謝謝
第2楼 qinchun36 发表于 2010-09-25 18:25
高级用户 发帖 400 积分 609
echo 本身就会多输出一个换行,而且你 %code% 和 > 还多了个空格。
用这个试试:

set /p Code=Please scan Code:
>my.txt set/p=%code%<nul
第3楼 523066680 发表于 2010-09-27 18:50
银牌会员 发帖 1,133 积分 2,361
不带转行,以前学到的一个用法

@echo off
set /p Code=Please scan Code:
set /p output=%code%>my.txt<nul

这样也是可以的,应该是先被<NUL 然后set/p的输出被导向my.txt了吧:
set /p output=%code%<nul>my.txt

回头一看,跟楼上重复了,那就将就骗积分哈哈

[ Last edited by 523066680 on 2010-9-27 at 18:54 ]
第4楼 acaigg 发表于 2011-01-19 21:46
初级用户 发帖 92 积分 115
学习一下
第5楼 modestleaner 发表于 2011-01-23 20:49
初级用户 发帖 27 积分 26
奇怪了,我用的是xp的系统在cmd下
输入楼主的代码没有换行和其他的情况的啊,就是去掉了个空格
第6楼 zaixinxiangnian 发表于 2011-01-24 00:42
初级用户 发帖 106 积分 151 来自 河南省
本人复制代码也没有出现楼主的情况啊
第7楼 glodboy 发表于 2011-01-24 12:00
新手上路 发帖 11 积分 10
LZ,应该是在批处理环境下使用的。
我刚刚用批处理试了的确会输出两个空格。
用3楼的代码试了下,没用空格。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023