cp -u ilegal di mac. Apa saja alternatifnya?


6

Saya memiliki Macbook Pro Lion, dan saya telah mencoba mengarsipkan file saya yang mencoba untuk menyalin dan menimpa jika sumbernya lebih baru daripada tujuan. Saya mencoba perintah berikut

cp -u source destination

tetapi dikatakan, -u adalah ilegal. Saya juga tidak menemukan --update atau -u di man cp.

Bisakah Anda membantu, apa yang bisa saya lakukan dalam situasi ini?

[Pertanyaan saya sudah pindah ke sini dari SO, jadi silakan menjawabnya sekali lagi. Saya harap ini adalah cara yang tepat untuk menghadapi ini]


2
Instal GNU Coreutils.
— Keith Thompson

Cinta untuk rsync?
— Mike Weller

Jawaban:


4

Mungkin solusi termudah adalah menggunakan rsync . Ini adalah aplikasi cadangan yang bisa melakukan apa cp -u (dan masih banyak lagi).

Penggunaan dasar akan menjadi seperti:

rsync -u source destination

Namun, Anda benar-benar harus memeriksa halaman manual karena ada BANYAK opsi yang bermanfaat.


3

Anda dapat menggunakan -nt kondisi:

[[ source/$file -nt destination/$file ]] && cp source/$file destination/$file

Jalankan saja ini untuk semua file (melalui lingkaran atau melalui find ).


2

Saya telah menginstal GNU Coreutils dengan MacPorts oleh

sudo ports install coreutils findutils 

findutils tidak perlu tetapi mereka menyarankan untuk menginstalnya juga .

Saya mengikuti ide dari Keith Thompson, (pujian!). Ini sangat berhasil, perintah penyalinan "lanjutan" sekarang:

/opt/local/libexec/gnubin/cp

Tidak memiliki halaman manual, tetapi memiliki bantuan gaya pria yang panjang dengan --help pilihan.


Saya menghubungkan kembali pertanyaan ini dengan akun Anda, jadi Anda harus dapat berkomentar, menerima jawaban, dll.
— Adam Lear

Jika Anda menggunakan zsh, ini akan menggantikan penyorotan. Tapi ini masih mengagumkan.
— Fred Concklin
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.