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.