求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

sh/bash/dash/ksh/zsh等Shell脚本
回复
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#1

帖子 iheartpp » 2008-09-26 16:37

我有一个文本文件,存着许多网址,每一个网址占一行,每两个网址间空出一行或多行,如何在每一行网址前面加上wget命令?

bash或是标准c。

谢谢。
头像
bones7456
论坛版主
帖子: 8495
注册时间: 2006-04-12 20:05
来自: 杭州
送出感谢: 0
接收感谢: 8 次
联系:

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#2

帖子 bones7456 » 2008-09-26 16:50

awk '{if(NF>0)print "wget",$0}'
不是最简单的。
关注我的blog: ε==3
头像
yaoms
帖子: 4953
注册时间: 2007-10-19 14:51
来自: 深圳
送出感谢: 0
接收感谢: 2 次

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#3

帖子 yaoms » 2008-09-26 16:59

代码: 全选

perl -i -pe 's#^(.*)$#wget $1#'  url.list 
Nothing 有事请发邮件到 yms541 AT gmail.com
alias 爱慕颇雷尔='mplayer'
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#4

帖子 xiooli » 2008-09-26 17:16

sed -i 's/^[^$]/wget /' file
头像
HuntXu
论坛版主
帖子: 5776
注册时间: 2007-09-29 3:09
送出感谢: 0
接收感谢: 6 次

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#5

帖子 HuntXu » 2008-09-26 17:21

xiooli 写了:sed -i 's/^/wget /' file
不行哦,有空行的

sed -i 's/^\s*$//;s/^/wget /' file
HUNT Unfortunately No Talent...
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
送出感谢: 0
接收感谢: 3 次
联系:

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#6

帖子 xiooli » 2008-09-26 17:27

HuntXu 写了:
xiooli 写了:sed -i 's/^/wget /' file
不行哦,有空行的

sed -i 's/^\s*$//;s/^/wget /' file
你引用的倒挺快,我后来才想起了,改了 :em04 :em02
ps:没你那个考虑周全。
头像
alinmn
帖子: 185
注册时间: 2006-05-19 21:42
来自: NIT
送出感谢: 0
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#7

帖子 alinmn » 2008-09-26 18:01

vim -c '%g!/^\s*$/:normal Iwget ' -c 'wq'
aerofox
帖子: 1453
注册时间: 2008-05-24 8:30
送出感谢: 2 次
接收感谢: 31 次

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#8

帖子 aerofox » 2008-09-26 21:38

最简单的是不改。

代码: 全选

wget -i url_list_file
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#9

帖子 iheartpp » 2008-09-27 1:28

aerofox 写了:最简单的是不改。

代码: 全选

wget -i url_list_file
先谢谢大家!!! :em01

其实这个-i参数我是会的。只是自己在bash和高级语言这方面欠火候,想做一个程序换一种方法实现而已。 :em02
crossie
帖子: 241
注册时间: 2008-05-25 20:35
送出感谢: 0
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#10

帖子 crossie » 2008-09-28 11:51

sed 's/\S/wget &/' file
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#11

帖子 iheartpp » 2008-09-28 20:02

怪不得高中老师要大家一题多解啊。
集体的力量大 :em01
yhywl
帖子: 13
注册时间: 2007-01-28 13:52
送出感谢: 0
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#12

帖子 yhywl » 2008-10-04 16:35

代码: 全选

perl -p -i -e 's/(^[^\n|^#].*)$/wget $1/' file.url
头像
goodluck1982
帖子: 171
注册时间: 2007-07-05 2:48
送出感谢: 0
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#13

帖子 goodluck1982 » 2008-10-17 23:55

这种情况我遇到过多次
不就是要下载好多东西吗?
我觉得最有效的方法就是用vim编辑

进入vim后

1. 先删除空行
:%s/\n^$//

2. 加wget
:%s/^/wget /

3. 保存退出
:x

前提是你得会基本的vim操作
知道上面三句如何执行就可以了
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15
送出感谢: 3 次
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#14

帖子 iheartpp » 2008-10-18 17:23

goodluck1982 写了:这种情况我遇到过多次
不就是要下载好多东西吗?
我觉得最有效的方法就是用vim编辑

进入vim后

1. 先删除空行
:%s/\n^$//

2. 加wget
:%s/^/wget /

3. 保存退出
:x

前提是你得会基本的vim操作
知道上面三句如何执行就可以了
:em01
头像
c\nc
帖子: 231
注册时间: 2007-12-25 12:51
送出感谢: 0
接收感谢: 0

Re: 求一个简单的bash和标准C编程script:如何在一个文本文件每行开头添加一个命令

#15

帖子 c\nc » 2008-10-18 22:44

我也来一个:

代码: 全选

sed -re 's/^[[:blank:]]*(http.*|ftp.*)/wget \1/' file
回复

回到 “Shell脚本”