shell脚本读取文件+读取命令行参数+读取标准输入+变量赋值+输出到文件
读取url_list文件批量下载网页
url_list
http://www.tianyancha.com/company/2412078287
http://www.4399.com/special/1.htm
http://www.we7.cc/
http://kongzhong.tmall.com/
http://dianying.2345.com/
http://www.takefoto.cn/viewnews-1521788.html
http://www.x4jdm.com/bf/429-1-1.html
http://www.douyu.com/546715
http://www.zjedu.gov.cn/default.html
http://dl.xunlei.com/
download.sh
#!/bin/bash
for line in $(cat $)
do
id=$(echo $line| getid | awk '{$id=10000+$1;print $id;}')
echo $line | gethtmlfile $id > "./result/"${id}".html"
done
运行:
[spider@zhangsuosheng]$ chmod +x ./download.sh
[spider@zhangsuosheng]$ ./download.sh url_list
1、sh文件格式
http://www.runoob.com/linux/linux-shell.html
2、bash按行读取文件+bash读取命令行参数
测试文件:url_list_zss
[spider@zhangsuosheng]$ cat url_list_zss
cccccc
ddddddddd
aaaaaa
正确写法:
#!/bin/bash
for line in $(cat $)
do
echo $line
done
[spider@zhangsuosheng]$ chmod +x ./download.sh
[spider@zhangsuosheng]$ ./download.sh url_list
cccccc
ddddddddd
aaaaaa
不合适的写法:
#!/bin/bash
for line in 'cat $1'
do
echo $line
done
[spider@zhangsuosheng]$ chmod +x ./download_testhtml.sh
[spider@zhangsuosheng]$ ./download_testhtml.sh url_list_zss
cat $
https://www.jb51.net/article/122918.htm
3、读取命令行参数
https://blog.csdn.net/qq_30145093/article/details/78191941
https://blog.csdn.net/ruidongliu/article/details/9717905
4、加法运算
用的awk
5、读取管道中的标准输入 直接读/xargs
https://www.cnblogs.com/wangqiguo/p/6464234.html
6、变量赋值
https://blog.csdn.net/lemontree1945/article/details/79126819
7、字符串拼接
https://www.jb51.net/article/44207.htm
shell脚本读取文件+读取命令行参数+读取标准输入+变量赋值+输出到文件的更多相关文章
- Shell脚本:while read line无法读取最后一行的问题
[1]Shell脚本:while read line无法读取最后一行的问题 刚刚利用shell脚本处理日志文件时,发现了一个问题:while read line无法读取到最后一行 通过编辑器可以看到待 ...
- 一只简单的网络爬虫(基于linux C/C++)————读取命令行参数及日志宏设计
linux上面的程序刚开始启动的时候一般会从命令行获取某些参数,比如以守护进程运行啊什么的,典型的例子就是linux下的man,如下图所示 实现该功能可以使用getopt函数实现,该函数在头文件uni ...
- Shell脚本传递带有空格的参数
在另一博文<Shell脚本实现DB2数据库表导出到文件>中实现了通过脚本实现将DB2数据库导出到文件,需要传入七个参数,最后一个是一个带有空格字符串,所以传入的时候有点问题,会自动识别空格 ...
- python读取命令行参数的方法
1.sys模块 需要模块:sys参数个数:len(sys.argv)脚本名: sys.argv[0]参数1: sys.argv[1]参数2: sys.argv[2] test.p ...
- Shell脚本中判断输入变量或者参数是否为空的方法
shell判断一个变量是否为空方法总结 https://www.jb51.net/article/154835.htm 1.判断变量 复制代码代码如下: read -p "input a w ...
- GO语言常用标准库04---flag读取命令行参数
package main import ( "flag" "fmt" "math" "os" ) /* go build ...
- split,cdn,shell脚本,tmux,记一次往国外服务器传大文件的经历
需求是这样的:将一个大概680M的Matlab数据文件传到国外某所大学的服务器上,服务器需要连接VPN才能访问,由于数据文件太大,而且如果我直接ssh连过去或者用ftp传输,那么中间很可能中断. ps ...
- 《Linux命令行与shell脚本编程大全》 第六章环境变量
很多程序和脚本都通过环境变量来获取系统信息.存储临时数据和配置信息. 6.1 什么是环境变量: bash shell用一个叫环境变量(environment variable)的特性来存储有关shel ...
- Shell脚本、Shell脚本结构、date命令的用法、变量
1.Shell脚本: shell是一种脚本语言 目的:可以实现自动化运维,能大大增加运维的效率.2.Shell脚本结构: #!/bin/bash 以#!/bin/bash开头,即以/bin/ba ...
随机推荐
- 矩阵乘法C语言实现
/* 矩阵乘法C语言实现 Slyar 2009.3.20 */ #include <stdio.h> #include <stdlib.h> /* 给 int 类型定义 ...
- instancetype 对比 id 的好处
转自:http://blog.csdn.net/yangzychina/article/details/8818941 今天研究代码的时候,发现居然返回 instancetype 类型,很惊讶自己学识 ...
- iOS开发多线程篇 08 —GCD的常见用法
iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) ...
- [转]解决Access restriction: The type * is not accessible due to restrict
我在eclipse使用org.omg下的东西的时候报此错误 我用的第一种方法解决了问题 转自:http://blog.sina.com.cn/s/blog_6714fba70100x6mz.html ...
- 由于没有正确使用Connection.setAutoCommit(false)而导致SQL语句没有被提交
症状: 提交了Form,执行insert操作,经过Debug也确认PreparedStatement.executeUpdate()返回值>0,但是在MySQL中直接查询表,返回的仍然是Empt ...
- 堆积木----vector防止内存超限
蒜头君有 nn 块积木,编号分别为 11 到 nn.一开始,蒜头把第 ii 块积木放在位置 ii.蒜头君进行 mm 次操作,每次操作,蒜头把位置 bb 上的积木整体移动到位置 aa 上面.比如 11 ...
- python练习题3--for
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 程序分析: 假设该数为 x. 1.则:x + 100 = n2, x + 100 + 168 = m2 ...
- Mongodb 和 Solr 实时同步
一.安装前准备 1.mongo-connector(基于python)中间件 2.python-3.4.3.msi 3.Mongodb 4.Solr 二.配置Mongodb集群 1).配置replic ...
- nutch solr
创建solr数据目录 创建目录solrData,拷贝solr-4.10.2/example/solr到solrData下 修改配置文件中数据目录路径 修改 solrData/solr/coll ...
- 【犀牛书笔记】JavaScript正则表达式的模式匹配
正则表达式,是一个描述字符模式的对象. JavaScript用RegExp类表示正则表达式 String和RegExp都定义了相关方法 原创文章,转载请注明:http://www.cnblogs.co ...