Copiar y chmod / chown al mismo tiempo

14

Tengo un archivo de registro rootque quiero copiar en un directorio propiedad de otro usuario para que lo analice (primero debe descomprimirlo).

Actualmente tendría que

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

¿Hay alguna manera de emitir ambos comandos al mismo tiempo, tal vez con una o más cpopciones?

usr-local-ΕΨΗΕΛΩΝ
fuente
¿Está preguntando acerca de ejecutar múltiples comandos al mismo tiempo?
asvignesh
@Vignesh Solo estoy preguntando cómo hacerlo de la manera más corta, tal vez con el uso adecuado de las tuberías;)
usr-local-ΕΨΗΕΛΩΝ

Respuestas:

6

La página de manual de cp no enumera ninguna opción que le permita hacer esto solo con el comando CP. Si desea simplemente emitir un comando y "alejarse", puede colocar los 2 comandos en 1 línea separados por a; para ejecutar automáticamente los comandos en secuencia.

cp log.xz / home / user / Documents; usuario conocido: usuario /home/user/Documents/log.xz
davidgo
fuente
Aunque trivial, hice mi pregunta para ver si había una línea inteligente, por ejemplo, con el uso adecuado de las tuberías. Probablemente no exista
usr-local-ΕΨΗΕΛΩΝ
No creo que sea una buena solución, pero si está empeñado en usar tuberías, se me ocurrió la siguiente mezcla que sospecho que funcionará: "cp -v /from.dir / to / dir 2> / dev / null | cut -f1 -d "'" | cut -c2- | xargs chown user: user "
davidgo
Hacer de desplazamiento más allá de la respuesta aceptada si realmente necesita una respuesta, la gente ...
JosiahYoder-inactivos, excepto ..
34

Es posible que desee mirar install:

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

installTiene otras opciones adecuadas para instalar. por ejemplo, establecer modo o preservar la estructura del directorio.

BatchyX
fuente
Buen consejo. Solía ​​pensar que "instalar" está destinado a instalar cosas, pero su resumen real en la página de manual es: "instalar - copiar archivos y establecer atributos"
Raúl Salinas-Monteagudo
@esperanto: El uso principal de installtodavía es instalar archivos en el sistema. Algunos programas realmente anulan installmodificando la variable de entorno PATH, para que los archivos se instalen en otro lugar. Algunos creadores de paquetes lo hacen para que los archivos no se instalen en el sistema actual, sino que se guarden en un paquete.
BatchyX
1
Es -g group -o user. -osignifica propietario.
Josiah
2

ver página de mapa del comando cp

--preserve [= ATTR_LIST] preserva los atributos especificados (predeterminado: modo, propiedad, marcas de tiempo), si es posible atributos adicionales: contexto, enlaces, xattr, todos

Jalal Hajigholamali
fuente