![wget が途中で停止した場合でも、wget -k はリンクを相対パスに変換しますか?](https://rvso.com/image/23547/wget%20%E3%81%8C%E9%80%94%E4%B8%AD%E3%81%A7%E5%81%9C%E6%AD%A2%E3%81%97%E3%81%9F%E5%A0%B4%E5%90%88%E3%81%A7%E3%82%82%E3%80%81wget%20-k%20%E3%81%AF%E3%83%AA%E3%83%B3%E3%82%AF%E3%82%92%E7%9B%B8%E5%AF%BE%E3%83%91%E3%82%B9%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%97%E3%81%BE%E3%81%99%E3%81%8B%3F.png)
私は、2 つの言語があり、各言語のページが重複している (と気付いた) サイトで wget を実行しています。すでに英語のコンテンツを持っているので、wget がこれ以上ダウンロードしないようにしたいと思います。実行時に -k スイッチを指定しましたが、wget がすべてのダウンロードを完了する前に停止した場合、リンクは通常どおり相対リンクに変換されますか? それとも、単に停止するだけですか?
(StackExchangeネットワークには、wgetに既にダウンロードされたコンテンツのリンクを変換させる方法についての別の質問があります。
wget -nc -k [previous options] [previous url]
ただし、タイムスタンプが誤ってオフになっているため、このオプションは使用できません。
答え1
いいえ。
-k オプションはダウンロードが完了するまで適用されません。
wget がキャンセルされた場合 (つまり、ctrl+c)、-k オプションは呼び出されません。
wget が完了すると、最後のステップはリンクの変換であることがわかります。
最後に、変換された .html ファイルの数が表示されます。このプロセス中に、ファイルのタイムスタンプも更新されます。
アップデート: -R オプションを使用して、異なる言語のファイルを除外してみてください。ただし、これは、ファイルに均一に一意となる要素がある場合にのみ機能します。
たとえば次のように試してください:
-R*_en*.htm*
こうすると、.htmまたは.htmlで終わるファイルやパスのどこかに_enが含まれるファイルが除外されます。私はアンダースコアか何かを使ってバッファ「en」の部分を削除します。単に「en」を含むファイルを除外したくないためです。
ただし、これはファイル名に一貫性がある場合にのみ機能します。