日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

一条命令下载google壁纸,含错误解决方法

發(fā)布時(shí)間:2023/11/27 生活经验 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一条命令下载google壁纸,含错误解决方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

該命令是從google圖片搜索上搜索wallpaper的大尺寸圖片,匹配其中的jpg文件進(jìn)行下載。

#!/bin/bash
for i in {1..10}; do
? ? for url in $(wget -O- -U "" "http://images.google.com/images?imgsz=xxlarge&hl=en&q=wallpaper&sa=N&start=${i}&ndsp=10" --quiet | grep -oe 'http://[^"]*\.jpg');
do
? ? ? ? wget $url;
? ? done
done

上面是google_wallpaper_download.sh腳本的內(nèi)容。

我們逐行說下這句shell的意思。

1. 這句好理解一個(gè)for循環(huán),令i從1到10.

2. 這也是一個(gè)for循環(huán), $()這個(gè)是說明將里面的內(nèi)容執(zhí)行然后逐一賦值給url。

wget 是一個(gè)非交互式的網(wǎng)絡(luò)文件下載工具,如果未安裝執(zhí)行sudo apt-get install wget進(jìn)行安裝。-O指定下載后的輸出文件,如果指定的文件是“-“,代表標(biāo)準(zhǔn)輸出;-U 指定agent,而非wget自帶的。–quiet安靜模式 (無信息輸出)。

然后通過管道(管道指|)將輸出傳遞給grep命令(在文件或輸入中進(jìn)行查找的命令)-o指示只顯示匹配到的東西,-e指示使用正則進(jìn)行匹配,
‘http://[^"]*\.jpg’是一個(gè)正則表達(dá)式,這里不介紹了。
3. wget下載匹配到的url。
4,5. done表示for結(jié)束。
總結(jié):該命令下載google的搜索結(jié)果,匹配jpg圖片地址,然后逐一下載。

可是我在使用了,犯了一個(gè)錯(cuò)誤,特記錄如下:

linux下sh執(zhí)行 syntax error near unexpected token ' 錯(cuò)誤解決方法:

將windows下的sh文件放到linux上執(zhí)行后,會(huì)出現(xiàn)如標(biāo)題的錯(cuò)誤。該錯(cuò)誤有文件格式引起的,具體來說,有幾種方式可以嘗試下。

?

在windows下,用ultraedit打開文件,將光標(biāo)定位到換行處,然后"切換十六進(jìn)制編輯模式“,可以看到換行處的值為”0D 0A",altraedit最下的工具欄可以看到“DOS”的文件樣式。altra edit有帶"DOS轉(zhuǎn)UNIX“的功能,轉(zhuǎn)換下,即可在最下的工具欄為"UNIX"字樣,切換十六進(jìn)制編輯模式看到的換行處的值就為"0A"字樣,這時(shí)傳遞上去,執(zhí)行sh就沒有問題了。


linux自身有帶dos2unix的命令,轉(zhuǎn)換一下,這個(gè)沒有試過,不過應(yīng)該可行。



總結(jié)

以上是生活随笔為你收集整理的一条命令下载google壁纸,含错误解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。