中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » P运行一次,提取删除文本的第一行并保存(已解决)
作者:
标题: P运行一次,提取删除文本的第一行并保存(已解决) 上一主题 | 下一主题
ka56
中级用户





积分 234
发帖 129
注册 2006-11-28
状态 离线
『楼 主』:  P运行一次,提取删除文本的第一行并保存(已解决)

文本a.txt假如是这样的:

helen16886778
helen476
helenl77776
helejy88
heli4555
hellen_521
hellenju
hellenmz06
hellloo
.....

想P运行一次,提取第一行的字符给变量,然后删除文本的第一行并保存重新保存修改后的a.txt

不知道能不能实现...或别的方式,谢谢!!

[ Last edited by ka56 on 2008-3-17 at 05:58 PM ]

2008-3-17 16:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 2 楼』:  

提取第一行的字符给变量

必须吗??

2008-3-17 17:11
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
ka56
中级用户





积分 234
发帖 129
注册 2006-11-28
状态 离线
『第 3 楼』:  

是的,不然没意义,我把想这个变量输给剪贴板...运行第一次,提取并删除"helen16886778",运行第二次提取并删除"helen476".....这样

[ Last edited by ka56 on 2008-3-17 at 05:23 PM ]

2008-3-17 17:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
flying008
中级用户





积分 245
发帖 103
注册 2006-6-30
状态 离线
『第 4 楼』:  

也可以通过寻找第一个回车符并删除及以前的字符来实现,不一定非要提取第一行作为变量,

2008-3-17 17:16
查看资料  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 5 楼』:  


@echo off
set str=
for /f "tokens=*" %%i in (a.txt) do (
  if not defined str (
    set "str=%%i"
  ) else (
   echo %%i>>a_tmp.txt
)
)
echo %str%
del /q a.txt
ren a_tmp.txt a.txt
pause


2008-3-17 17:22
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
dy2003310
初级用户





积分 180
发帖 68
注册 2006-12-21
来自 China
状态 离线
『第 6 楼』:  skip

for /f "skip=1" %%i in (a.txt) do echo %%i >>b.txt
del a.txt
ren b.txt a.txt

2008-3-17 17:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ka56
中级用户





积分 234
发帖 129
注册 2006-11-28
状态 离线
『第 7 楼』:  

谢谢ABCD大虾的鼎力相助,这个程序能减少不少双手的动作...真的比较开心~~~
我很菜,我是做QQ买卖的,楼上兄弟有这方面的需求,我愿尽力帮助..谢谢!!!

2008-3-17 17:36
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ka56
中级用户





积分 234
发帖 129
注册 2006-11-28
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by dy2003310 at 2008-3-17 17:34:
for /f "skip=1" %%i in (a.txt) do echo %%i >>b.txt
del a.txt
ren b.txt a.txt

不知怎么的实现不了,出来个B文本,应是逐行提取的

谢谢dy2003310和四楼的好兄弟!!!

2008-3-17 17:42
查看资料  发短消息 网志   编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 9 楼』:  

简洁的
@echo off
type 1.txt |more +1 >2.txt
set/p a= <1.txt
echo %a%
pause


2008-3-17 18:59
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: