Salin dan chmod / chown pada saat yang sama

14

Saya memiliki file log yang dimiliki oleh rootyang ingin saya salin ke direktori yang dimiliki oleh pengguna lain untuk dianalisis (harus dikompresi terlebih dahulu).

Saat ini saya harus

# cp log.xz /home/user/Documents
# chown user:user /home/user/Documents/log.xz

Apakah ada cara untuk mengeluarkan kedua perintah secara bersamaan, mungkin dengan satu atau lebih cpopsi?

usr-local-ΕΨΗΕΛΩΝ
sumber
Anda bertanya tentang menjalankan beberapa perintah sekaligus?
asvignesh
@ Vignesh Saya hanya bertanya bagaimana cara melakukannya dengan cara terpendek, mungkin dengan penggunaan pipa yang tepat;)
usr-local-ΕΨΗΕΛΩΝ

Jawaban:

6

Halaman manual cp tidak mencantumkan opsi yang memungkinkan Anda melakukan ini hanya dengan perintah CP. Jika Anda hanya ingin mengeluarkan perintah dan "berjalan pergi", Anda dapat meletakkan 2 perintah pada 1 baris yang dipisahkan oleh a; untuk secara otomatis menjalankan perintah secara berurutan.

cp log.xz / home / user / Documents; pengguna chown: pengguna / home / pengguna / Dokumen / log.xz
davidgo
sumber
Meskipun sepele, saya mengajukan pertanyaan saya untuk melihat apakah ada satu garis cerdas misalnya dengan penggunaan pipa yang tepat. Mungkin tidak ada
usr-local-ΕΨΗΕΛΩΝ
Saya tidak berpikir itu solusi yang baik, tetapi jika Anda mati untuk menggunakan pipa, saya datang dengan ramuan berikut yang saya curigai akan berfungsi - "cp -v /from.dir / to / dir 2> / dev / null | cut -f1 -d "'" | cut -c2- | xargs chown pengguna: user "
davidgo
Gulir ke luar jawaban yang diterima jika Anda benar-benar membutuhkan jawaban, kawan ...
JosiahYoder-deactive Kecuali ..
34

Anda mungkin ingin melihat install:

install -g user -o user log.xz /home/user/Documents

installmemiliki opsi lain yang cocok untuk menginstal. misalnya mengatur mode atau mempertahankan struktur direktori.

BatchyX
sumber
Tip yang bagus. Saya cenderung berpikir "instal" dimaksudkan untuk menginstal sesuatu, tetapi ringkasan aktualnya di halaman manual adalah: "install - salin file dan atur atribut"
Raúl Salinas-Monteagudo
@ Esperanto: Penggunaan utama installmasih untuk menginstal file ke sistem. Beberapa program sebenarnya menimpa installdengan memodifikasi variabel lingkungan PATH, sehingga file diinstal di tempat lain. Beberapa pembuat paket melakukan itu sehingga file tidak diinstal ke sistem saat ini, tetapi disimpan ke dalam sebuah paket.
BatchyX
1
Ini -g group -o user. -okependekan dari pemilik.
JosiahYoder-deactive kecuali ..
2

lihat halaman peta perintah cp

--preserve [= ATTR_LIST] mempertahankan atribut yang ditentukan (default: mode, kepemilikan, cap waktu), jika mungkin atribut tambahan: konteks, tautan, xattr, semua

Jalal Hajigholamali
sumber