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 ...
随机推荐
- 多线程-wait/notify/notifyAll
引言 在Java中,可以通过配合调用Object对象的wait,notify和notifyAll来实现线程间的通信. 在线程中调用wait方法,将阻塞带带其他线程的通知(其他线程调用notify或no ...
- [k8s]监控
监控架构 参考 https://github.com/DataDog/the-monitor/blob/master/kubernetes/how-to-collect-and-graph-kuber ...
- [svc]rsyslog及logrotate小结
[root@node1 logrotate.d]# ls dracut haproxy httpd mcelog nginx ppp psacct syslog yum yum install ngi ...
- 自己定义滑动删除item的ListView。
首先继承创建继承ListView和实现OnTouchListener,OnGestureListener的类. 会使用到AbsList中的pointToPosition(int x, int y)方法 ...
- 分页技术框架(Pager-taglib)学习一(页面分页)
一.Pager-taglib简介 1.Pager-taglib,支持多种风格的分页显示.实际上她是一个Jsp标签库,为在JSP上显示分页信息而设计的一套标签,通过这些标签的不同的组合,会形成多 ...
- poj3020 Antenna Placement 匈牙利算法求最小覆盖=最大匹配数(自身对应自身情况下要对半) 小圈圈圈点
/** 题目:poj3020 Antenna Placement 链接:http://poj.org/problem?id=3020 题意: 给一个由'*'或者'o'组成的n*m大小的图,你可以用一个 ...
- C0301 代码块{}的使用,重定向, 从文件中读取行
#!/bin/bash # 从 /etc/fstab 中读行 File=/etc/fstab { read line1 read line2 } < $File # {}代码块, ...
- 第一百四十一节,JavaScript,封装库--DOM加载
JavaScript,封装库--DOM加载 DOM加载,跨浏览器封装DOM加载,当网页文档结构加载完毕后执行函数,不等待图片音频视频等文件加载完毕 /** dom_jia_zai()函数,DOM页面加 ...
- 请说明SQLServer中delete from tablea & truncate table tablea的区别
请说明SQLServer中delete from tablea & truncate table tablea的区别 解答:两者都可以用来删除表中所有的记录.区别在于:truncate是DDL ...
- 【BZOJ】3299: [USACO2011 Open]Corn Maze玉米迷宫(bfs)
http://www.lydsy.com/JudgeOnline/problem.php?id=3299 映射一下传送门即可.. #include <cstdio> #include &l ...