Saya ingin mereplikasi izin file ke yang lain. Saya tidak ingin menyalin data, hanya izin.
Misalnya, saya membuat file baru dan ingin memiliki izin yang sama dengan file lain yang sudah ada.
windows-7
file-permissions
acl
TaoTao
sumber
sumber
Jawaban:
Anda dapat melakukannya dalam beberapa langkah dengan icacls dan editor teks.
Pertama, Anda harus menyimpan izin dari file asli
Anda perlu mengedit
perms.txt
file yang baru saja Anda buat di folder apa pun yang Anda jalankanicacls
. File tersebut akan terlihat seperti ini:Anda dapat mengabaikan semua hal di baris ke-2, yang kami pedulikan hanyalah baris pertama. Ubah
file1.bin
ke nama file baru Andafile2.bin
dan simpan file tersebut.Sekarang Anda hanya perlu mengembalikan izin file pada file ke-2, perhatikan bahwa kami tidak menyertakan nama file saat ini. (Jika Anda mendapatkan kesalahan yang mengatakan " Tidak semua hak istimewa atau grup yang direferensikan ditugaskan ke pemanggil. " Jalankan program lagi dalam prompt perintah yang ditinggikan.)
sumber
File.GetAccessControl()
danFile.SetAccessControl()
Untuk membuatnya dalam batch (salin pemindahan keamanan dari subfolder atau semua folder dari satu drive ke folder / striktur file yang sama di drive lain), buat, katakanlah,
cpdacls.bat
file dengan konten ini:Dan kemudian jalankan seperti
cpdacls.bat e:\ f:\
.Perhatikan bahwa struktur folder di folder tujuan harus sama dengan struktur folder di folder sumber, diambil dari akarnya , tidak tergantung pada subfolder apa yang telah Anda tentukan sebagai folder sumber.
sumber
Sejauh ini, cara termudah adalah dengan menggunakan PowerShell dan menjalankan:
sumber