刚才老婆交给我一项任务,帮她生成一个文本文件,内容是978711100001-978711130000这样数字,每行一个。接到任务后,首先想到用shell脚本的循环生成,不过对shell还是不太熟悉,没有成功。然后想到可以用VI来完成任务,搜了一下,果然有办法。
于是vi num.txt 输入:r !seq 978711100001 978711130000,很快生成了数字。。但是科学计数法显示的!显然不满足要求,这怎么办?又想了想,科学计数是大于某位数字后才使用的,现在是后几位是变动的,我只生成后几位,然后在字符串前面增加我要的前几位不完了吗?
于是重新vi num.txt
:r !seq 100001 130000
:1,$s/^/978711/g
OK,完成任务。
方法二:使用shell完成
脚本如下:
#!/bin/sh
for ((i=100001;i<=130000;i++)) do echo "978711$i">>/tmp/num.txt done
|
方法三:使用windows的批处理完成
@ECHO OFF
for /L %%e in (10001,1,30000) do echo 978711%%e >>c:/num.txt |
方法四:使用Excel的填充
见下面的gif动画,感谢蓝色虫!
新增一linux方法,感谢留言的ywlscpl 给我以思路:seq -f %1.f 978711100001 978711130000 >num.txt
阅读(2911) | 评论(2) | 转发(0) |