2016-09-29 29 views
0

我有一個包含各行看起來像短鏈接的文件:「http://short.ly/1Typn4Cbash腳本獲取完整的URL列表從短網址的文件

我能夠遵守所有重定向和寫入最終完整的URL到文件使用此curl命令:

curl -Ls -o /dev/null -w %{url_effective} http://short.ly/1Typn4C | xargs echo >> ./full_urls.txt 

當通過使用相同的命令文件中的每一行,它只是結束了寫原來的短網址的文件循環:

while read line 
do 
    finalLink="$(curl -Ls -o /dev/null -w %{url_effective} "$line")" 
    echo "$finalLink" >> ./full_urls.txt 
done < ./short_urls.txt 

顯然我誤解了shell腳本的工作方式。

回答

1

適用於我,因爲它應該。

$ echo 'https://youtu.be/dQw4w9WgXcQ' >./short_urls.txt 

$ while read line 
> do 
> finalLink="$(curl -Ls -o /dev/null -w %{url_effective} "$line")" 
> echo "$finalLink" >> ./full_urls.txt 
> done < ./short_urls.txt 

$ cat ./full_urls.txt 
https://www.youtube.com/watch?v=dQw4w9WgXcQ&feature=youtu.be