Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menghitung checksum konten file atau sekumpulan file.
Tugas ini ditambahkan di 15.8, tetapi memerlukan solusi untuk digunakan untuk versi MSBuild di bawah 16.0.
Parameter tugas
Tabel berikut ini menjelaskan parameter tugas GetFileHash.
| Parameter | Deskripsi |
|---|---|
Files |
Parameter ITaskItem[] wajib.File yang akan di-hash. |
Items |
ITaskItemParameter output [].Input Files dengan metadata tambahan diatur ke hash file. |
Hash |
StringParameter output .Hash file. Output ini hanya diatur jika ada tepat satu item yang diteruskan. |
Algorithm |
Parameter String opsional.Algoritma. Nilai yang diizinkan: SHA256, SHA384, dan SHA512. Default = SHA256. |
MetadataName |
Parameter String opsional.Nama metadata tempat hash disimpan di setiap item. Default ke FileHash. |
HashEncoding |
Parameter String opsional.Pengodean yang digunakan untuk hash yang dihasilkan. Default ke hex. Nilai yang diizinkan = hex, base64. |
Contoh
Contoh berikut menggunakan tugas GetFileHash untuk menentukan dan mencetak checksum item FilesToHash.
<Project>
<ItemGroup>
<FilesToHash Include="$(MSBuildThisFileDirectory)\*" />
</ItemGroup>
<Target Name="GetHash">
<GetFileHash Files="@(FilesToHash)">
<Output
TaskParameter="Items"
ItemName="FilesWithHashes" />
</GetFileHash>
<Message Importance="High"
Text="@(FilesWithHashes->'%(Identity): %(FileHash)')" />
</Target>
</Project>
Dengan satu file, Anda dapat menggunakan Hash parameter output. Contoh proyek berikut diberi nama hash-example.proj dan menghitung hash untuk dirinya sendiri:
<Project>
<ItemGroup>
<FileToHash Include="$(MSBuildThisFileDirectory)hash-example.proj" />
</ItemGroup>
<Target Name="GetHash">
<GetFileHash Files="@(FileToHash)">
<Output
TaskParameter="Hash"
ItemName="FileHash" />
</GetFileHash>
<Message Importance="High"
Text="File: @(FileToHash) Hash: @(FileHash)" />
</Target>
</Project>