Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Script bash

  1. #1

    Script bash

    Devo preparare uno script che se esiste una tale cartella la rinomini indicando data ed ora.
    Esempio

    Cartella Versione01 -> Versione20080115.122300.Old

    Per ora ho trovato la sintassi del comando date che scritto in questo modo qua

    date '+%Y%d%m.%H%M%S'

    restituisce la data ed ora in questa forma: 20081501.122349

    Mi aiutate a completare lo script ora?

  2. #2
    Se il nome della directory rispetta sempre la stessa struttura, puoi provare con
    codice:
    DATA=`date '+%Y%d%m.%H%M%S'`; for DIR in Versione??; do mv ${DIR} Versione${DATA}.Old; done
    Ovviamente puoi variare l'espressione regolare nel for dello script con una che filtri solo le directory che ti interessano.
    NeapoliX GNU/Linux
    "Alla maggior parte della gente piace leggere la propria scrittura e annusare l'odore dei propri peti." (Auden)

  3. #3
    Grande!

    Domanda, che cosa significano gli apici `date '+%Y%d%m.%H%M%S'` ???

  4. #4
    Gli apici inversi "catturano" l'output del comando che contengono e lo impostano come valore della variabile, DATA in questo caso.
    Per essere più chiari:
    codice:
    $ date '+%Y%d%m.%H%M%S'
    20080115.122300
    $ VARIABILE_DATA=`date '+%Y%d%m.%H%M%S'`
    $ echo $VARIABILE_DATA
    20080115.122300
    Senza apici il risultato viene stampato; con gli apici oppure utilizzando $(comando ....), che è analogo, il risultato invece viene assegnato alla variabile.

    Questa è la risposta a tutte le domande: http://www.pluto.it/files/ildp/guide/abs/index.html

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.