Akses ditolak ketika mencoba memindahkan file melalui baris perintah

3

Diedit

Saya perlu memindahkan subfolder ke subfolder lain. Ketika saya menggunakan perintah ini:

move e:\rootfolder\sourcefolder c:\rootfolder\destfolder

Saya mengerti Access is denied.

Perhatikan bagaimana drive sumbernya e: dan tujuannya adalah c :. Saya percaya penjawab pertama benar tentang ini menjadi masalah dengan cmd.exe. Saya akan memberikan waktu sebelum saya menandai jawaban mereka.

ocilatingcretin
sumber
Ketika saya mencoba ini di Windows 7, membuat folder sumber dan tujuan sesuai perintah Anda, "berfungsi". Sudahkah Anda memeriksa kepemilikan dan izin pada destfolder?
PJC
Saya dapat memindahkan folder melalui klik dan seret menggunakan Explorer, jadi saya harus berasumsi bahwa izin saya memadai.
oscilatingcretin
Anda kadang-kadang bisa mendapatkan kesalahan izin jika folder sumber sedang digunakan, termasuk jika folder dibuka oleh prompt perintah atau oleh penjelajah.
sgmoore
Saya menganggap berdasarkan izin. Harap perhatikan, skrip tidak dijamin berjalan dengan izin yang sama dengan akun tempat Anda masuk.
Dave
Dave Rook - Ya, subfolder, sebenarnya. Saya mencoba memindahkannya ke subfolder C :, tetapi saya mendapatkan kesalahan yang sama.
oscilatingcretin

Jawaban:

3

Sepertinya ini adalah perilaku yang diharapkan (untuk beberapa alasan aneh) ketika mencoba memindahkan folder di antara drive.

http://technet.microsoft.com/en-us/library/hh849852.aspx

Move-Item akan memindahkan file antar drive yang didukung oleh penyedia yang sama, tetapi hanya akan memindahkan direktori dalam drive yang sama.

Saya tahu bahwa tautan mengatakan itu berlaku untuk Windows Powershell, tapi saya baru saja menguji pada mesin XP saya di sini di tempat kerja dan melihat perilaku yang sama persis, jadi saya percaya itu berlaku untuk cmd.exe juga.

daenris
sumber
0

Ini adalah metode berputar untuk sedikitnya, tetapi karena saya sering bertemu ini, saya datang dengan solusi yang mencapai hal yang sama tanpa perbedaan kecepatan utama. Mengharuskan Anda menginstal 7z.exe(dapat diunduh di sini ), dan ditambahkan ke jalur Anda. 7z adalah garis pengarsipan perintah cepat, sehingga ini bisa juga dilakukan dengan tar.exe, gzip.exe, dll

Saya melakukan sesuatu seperti berikut:

7z a x:\destinationfolder\tmp.7z c:\directoryyouwanttomove && ^
7z x x:\destinationfolder\tmp.7z

Saya menyadari bahwa ini sudah sangat tua, dan saya tidak secara khusus menjawab pertanyaan op, tetapi saya sangat kesulitan menemukan ini didokumentasikan di mana saja, dan saya mungkin bisa menyelamatkan seseorang dari rasa sakit.

dgo
sumber