Probablemente sea un duplicado, pero todas mis búsquedas están generando preguntas sobre errores de permiso denegado.
Estoy ejecutando un comando en un shell bash. Quiero redirigir la salida para agregarla a un archivo que probablemente no exista en la primera ejecución. Quiero establecer un modo de permisos de archivo específico si la redirección de salida tiene que crear este archivo. ¿Hay alguna manera de hacer esto con un comando?
Por ejemplo, podría intentar
foo >> /tmp/foo.log 0644
¿Dónde 0644
están los permisos con los que quiero foo.log
terminar? La mayoría de los comandos con los que he experimentado en bash terminan interpretando 0644
como un argumento adicional para foo
.
Tengo la sensación de que esto llevará un segundo comando a chmod
los permisos antes o después de escribirle.
Estoy usando GNU bash 4.2.25 y Ubuntu 12.04, si eso hace la diferencia, se prefieren las respuestas generales.