2016-09-24 84 views
1

長話短說,我正在開發一個腳本,它依靠用戶從我提供的鏈接下載tar.gz。我也不允許自己下載tar.gz。獲取github鏈接代碼版本

tar.gz實際上是github回購的特定版本。鏈接是 https://github.com/ros/urdfdom_headers/archive/1.0.0.tar.gz。 問題是,如果您在瀏覽器中打開此鏈接,則下載的文件將被命名爲urdfdom_headers-1.0.0.tar.gz,完全如我所願。但是,如果用戶決定使用wget直接下載,則該文件的名稱將爲1.0.0.tar.gz。我的腳本依賴於檔案的名稱,儘管我可以說明名稱的差異,但擁有一致的名稱將大大簡化我的生活。

我的問題是,是否有一個github鏈接到該項目存儲名爲urdfdom_headers-1.0.0.tar.gz而不是1.0.0.tar.gz的檔案,以便任何類型的下載將導致安全的命名。該鏈接的版本是https://github.com/ros/urdfdom_headers/releases/

回答

0

我的問題是,是否有一個github上鍊接到該項目的存儲與該名urdfdom_headers-1.0.0.tar.gz的存檔,而不是1.0.0.tar.gz的

在那裏是沒有這種聯繫的情況下,你的腳本只是一個命令遠離工作(在bash會話):

find . -mindepth 1 -maxdepth 1 -regex '^./[0-9].*\.tar\.gz' -exec echo '{}' \; | sed -e "s/^\.\///g" | while read f; do mv "${f}" "urdfdom_headers-${f}"; done 

在多行能見度:

find . -mindepth 1 -maxdepth 1 -regex '^./[0-9].*\.tar\.gz' -exec echo '{}' \; | \ 
    sed -e "s/^\.\///g" | \ 
    while read f; do mv "${f}" "urdfdom_headers-${f}"; done 

因此,如果有任何下載的tar.gz文件以數字開頭,它們將被相應地重命名。

+0

我不問如何找到並重命名文件。我想知道github上是否有這樣的鏈接,所以我可以直接下載帶有正確名稱的文件。不管怎麼說,還是要謝謝你! – niko

+0

@niko我的觀點是:我不認爲有這樣的鏈接,因此我的解決方法。 – VonC

相關問題