Il s'agit probablement d'un doublon, mais toutes mes recherches aboutissent à des questions sur les erreurs de refus d'autorisation.
Je lance une commande dans un Shell bash. Je veux rediriger la sortie pour l'ajouter à un fichier qui n'existe probablement pas lors de la première exécution. Je veux définir un mode de permissions spécifique pour le fichier si la redirection de la sortie doit créer ce fichier. Y a-t-il un moyen de faire cela avec une seule commande ?
Par exemple, je pourrais essayer
foo >> /tmp/foo.log 0644
donde 0644
sont les autorisations que je souhaite foo.log
pour finir. La plupart des commandes que j'ai expérimentées dans bash finissent par interpréter 0644
comme argument supplémentaire à foo
.
J'ai l'impression qu'il va falloir un deuxième commandement pour chmod
les autorisations avant ou après y avoir écrit.
J'utilise GNU bash 4.2.25 et Ubuntu 12.04, si cela fait une différence - les réponses générales sont préférables.