起因:为了获取某个国外网站的模板(国外的设计师真的很赞),尝试靠wget抓取网页。其中有部分图片在js文件中标注,如下
;(function( $, window, document, undefined ) {
var Customizer = function( ) {
this.init();
}
Customizer.prototype = {
patterns: [
'assets/images/layout/bg/arches.png',
'assets/images/layout/bg/blu_stripes.png',
'assets/images/layout/bg/bright_squares.png',
'assets/images/layout/bg/brushed_alu.png',
'assets/images/layout/bg/circles.png',
'assets/images/layout/bg/climpek.png',
'assets/images/layout/bg/connect.png',
'assets/images/layout/bg/corrugation.png',
'assets/images/layout/bg/cubes.png',
'assets/images/layout/bg/diagonal-noise.png',
'assets/images/layout/bg/diagonal_striped_brick.png',
'assets/images/layout/bg/diamonds.png',
'assets/images/layout/bg/diamond_upholstery.png',
'assets/images/layout/bg/escheresque.png',
'assets/images/layout/bg/fabric_plaid.png',
'assets/images/layout/bg/furley_bg.png',
'assets/images/layout/bg/gplaypattern.png',
'assets/images/layout/bg/gradient_squares.png',
'assets/images/layout/bg/grey.png',
......
我把中间变化的png文件名单独列成一个文件(png.list),如下
escheresque.png
fabric_plaid.png
furley_bg.png
gplaypattern.png
gradient_squares.png
grey.png
grilled.png
hexellence.png
lghtmesh.png
light_alu.png
light_checkered_tiles.png
light_honeycomb.png
littleknobs.png
nistri.png
noise_lines.png
noise_pattern_with_crosslines.png
noisy_grid.png
norwegian_rose.png
pineapplecut.png
......
向公司的一个运维大牛咨询了一段shell脚本(downpng.sh),记录一下,同时与大家分享,代码如下:
#!/bin/bash
# Bash for download png file
text="png.list"
url="http://www.xxx.com/xxx/assets/images/layout/bg"
# ==============================================
# Function
# ==============================================
man {
while read line
do
echo -e "$line"
wget -q $url/$line
done < $text
}
# ==============================================
# Action
# ==============================================
man
代码很简单,使用while read
,但是用非脚本语言写就很繁琐(偶是搞java的,尤其如此),看来要好好学习一下bash了。