Forum Programmation.shell création avancée de répertoires

Posté par  .
Étiquettes : aucune
0
5
sept.
2006
Bonjour,

Je cherche un moyen de créer des répertoires indexés en fonction de la date de création. Par exemple un répertoire créé aujourd'hui s'appellerai '06-09-05'.
Le man mkdir ne me donne aucune réponse la dessus. Existe-t-il une autre commande acceptant des arguments pour définir le nom du répertoire ?

Rénald.
  • # man date ?

    Posté par  . Évalué à 4.

    mkdir `date +"%Y-%m-%d"` ?
    • [^] # Re: man date ?

      Posté par  . Évalué à 1.

      Magnifique ! J'avais en effet parcourus la man date mais j'ignorais qu'il suffisait de mettre cette commande entre guillemets à la place du nom du nom du répertoire qu'on veut créer. Merci pour le tuyau.

      Rénald.
      • [^] # Re: man date ?

        Posté par  . Évalué à 3.

        Plus exactement, les `` (apostrophes inverses) sont une méthode d'expansion/redirection du shell, qui sont remplacées par la sortie standard de la commande qu'ils contiennent, avant l'exécution du reste de la ligne de commande. C'est bien sûr valable pour n'importe quel usage; ça fait partie de la panoplie générale des redirections, avec | et >.
        Une syntaxe équivalente et un peu plus lisible est $(), qui a l'avantage d'être imbricable.

        Par exemple mkdir $(date | tr ' /()' '____') pour faire un répertoire "mardi_5_septembre_2006,_16:53:55__UTC+0200_"

        (oui, il y avait plus simple et plus utile)
        • [^] # Re: man date ?

          Posté par  (site web personnel) . Évalué à 2.

          Par contre $() est spécifique à Bash alors que `` est censé être disponible sur tout shell compatible sh.

          pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.

    • [^] # Re: man date ?

      Posté par  (site web personnel) . Évalué à 1.

      Encore plus cours avec la commande date GNU :

      %F same as %Y-%m-%d

      Donc : mkdir `date +%F'
  • # mkdir `date +%Y-%m-%d`

    Posté par  (site web personnel, Mastodon) . Évalué à 1.

    cf. titre ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.