Copiez et chmod / chown en même temps

14

Je possède un fichier journal rootque je souhaite copier dans un répertoire appartenant à un autre utilisateur pour qu'il puisse l'analyser (il doit d'abord être décompressé).

Actuellement, je dois

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

Existe-t-il un moyen d'émettre les deux commandes en même temps, peut-être avec une ou plusieurs cpoptions?

usr-local-ΕΨΗΕΛΩΝ
la source
vous demandez à propos de l'exécution de plusieurs commandes en même temps?
asvignesh
@Vignesh Je demande juste comment faire le plus court chemin, peut-être avec une bonne utilisation des tuyaux;)
usr-local-ΕΨΗΕΛΩΝ

Réponses:

6

La page de manuel cp ne répertorie aucune option qui vous permettrait de le faire uniquement avec la commande CP. Si vous voulez simplement émettre une commande et "repartir", vous pouvez mettre les 2 commandes sur 1 ligne séparées par un; pour exécuter automatiquement les commandes en séquence.

cp log.xz / home / user / Documents; utilisateur chown: utilisateur /home/user/Documents/log.xz
davidgo
la source
Bien que trivial, j'ai posé ma question pour voir s'il y avait une doublure intelligente, par exemple avec une bonne utilisation des tuyaux. Il n'existe probablement pas
usr-local-ΕΨΗΕΛΩΝ
Je ne pense pas que ce soit une bonne solution, mais si vous êtes prêt à utiliser des tuyaux, j'ai trouvé la concoction suivante qui je pense fonctionnera - "cp -v /from.dir / to / dir 2> / dev / null | cut -f1 -d "'" | cut -c2- | xargs chown user: user "
davidgo
Faites défiler au-delà de la réponse acceptée si vous avez vraiment besoin d'une réponse, les gens ...
JosiahYoder-deactive sauf ..
34

Vous voudrez peut-être regarder install:

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

installa d'autres options appropriées pour l'installation. par exemple, définir le mode ou conserver la structure du répertoire.

BatchyX
la source
Bon conseil. J'ai tendance à penser que "installer" est destiné à installer des choses, mais son résumé réel dans la page de manuel est: "installer - copier des fichiers et définir des attributs"
Raúl Salinas-Monteagudo
@esperanto: L'utilisation principale de installest toujours d'installer des fichiers sur le système. Certains programmes remplacent installen fait la modification de la variable d'environnement PATH, afin que les fichiers soient installés ailleurs. Certains constructeurs de packages font cela pour que les fichiers ne soient pas installés sur le système actuel, mais plutôt enregistrés dans un package.
BatchyX
1
Ça l'est -g group -o user. -osignifie propriétaire.
JosiahYoder-deactive sauf ..
2

voir la page map de la commande cp

--preserve [= ATTR_LIST] conserve les attributs spécifiés (par défaut: mode, propriété, horodatages), si possible attributs supplémentaires: contexte, liens, xattr, tous

Jalal Hajigholamali
la source