1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[バッチ] bitsadminでファイルをダウンロードする

Last updated at Posted at 2019-11-26

もくじ
https://qiita.com/tera1707/items/4fda73d86eded283ec4f

ビルドの自動化関連

やりたいこと

バッチで、ファイルをダウンロードしてきて好きなパスに配置する、ということをしたい。

バッチでnuget.exeをダウンロード

今回、いろいろなパッケージを管理するためのnuget.exehttps://dist.nuget.org/win-x86-commandline/latest/nuget.exeからダウンロードしてきて、バッチファイルと同じ階層に保存する、ということをした。

その時のサンプルは下記の通り。

set FILENAME="%~dp0\nuget.exe"
if not exist %FILENAME% (
bitsadmin /transfer "nuget" https://dist.nuget.org/win-x86-commandline/latest/nuget.exe "%FILENAME%"
)

書き方は、

bitsadmin /transfer <ジョブ名> <URL> <保存先ファイル名>
  • ジョブ名は何でもよい。
  • URLは、ダウンロード先。
  • 保存先ファイル名は、保存したいファイルのパス。

参考

発展形

このコマンドを使ってnuget.exeをダウンロードするようにしてやることで、以前メモした[ビルドをバッチで行う]方法の中のnuget.exeを置いたフォルダで

.\NuGet restore <slnファイルのパス>

を行う、というところのnuget.exeを置くという行為が自動化できる。

なんの役に立つか?

ソースコードの管理にgit等を使っているときに、容量削減のためバイナリファイル(exeやdllファイル等)を上げてはいけない、というルールがある場合がある。
そういう場合に、nuget.exeをリポジトリに上げて容量を無駄に増やさず、バッチファイルを1つ上げるだけで済むようにできる。

参考

【VisualStudio】ビルドをバッチで行う
https://qiita.com/tera1707/items/018e8390207c5b2212b2

コマンドプロンプトからインターネット上のファイルをダウンロードする (bitsadmin)
https://maku77.github.io/windows/cmd/download.html

nuget.exe CLIを使用してパッケージを管理する
https://docs.microsoft.com/ja-jp/nuget/install-nuget-client-tools#windows

1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?