comando touch

Finalità

Aggiorna i tempi di accesso e modifica di un file.

Sintassi

tocco [ -a ] [ -c ] [ -m ] [ -f ] [ -r RefFile ] [ Ora | -t Ora | -d data/ora] { File ... | Directory ...}
Nota: La sintassi precedente è applicabile solo quando la modalità UNIX03 non è abilitata nel sistema operativo AIX®.

touch [- a f] [-r ref_file | -t tempo | -d date_time ] file... | Directory

Nota: La sintassi precedente è applicabile solo quando la modalità UNIX03 è abilitata. Per abilitare la modalità UNIX03 nel sistema operativo AIX è necessario impostare il valore della variabile di ambiente XPG_SUS_ENV a ON.

Descrizione

Il comando touch aggiorna i tempi di accesso e modifica di ogni file specificato dal parametro File di ogni directory specificata dal parametro Directory . Se non si specifica un valore per la variabile Tempo , il comando touch utilizza l'ora corrente. Se si specifica un file che non esiste, il comando touch crea il file a meno che non venga specificato il flag -c .

Il codice di ritorno dal comando touch è il numero di file per i quali i tempi non potrebbero essere modificati con successo (inclusi i file che non esistavano e non sono stati creati).

Gli indicatori -a e -m sono attivi anche quando non si specificano nel comando touch .

Indicatori

Elemento Descrizione
-a Cambia l'orario di accesso del file specificato dalla variabile File . Non cambia il tempo di modifica a meno che non sia specificato anche -m .
-c Non crea il file se non esiste già. Non sono scritti messaggi diagnostici riguardanti questa condizione.
-d Tempo Date_Tempo Utilizza la data e l'ora specificate invece dell'ora corrente. La variabile date_time è specificata nel formato decimale, YYYY - MM - DDThh:mm: SS [ .frac] [ tz] o YYYY - MM - DDThh:mm: SS [, frac] [ tz], dove:
AAAA
Specifica le quattro cifre dell'anno (da 0000 a 9999).
MI
Specifica il mese dell'anno (da 01 a 12).
GG
Specifica il giorno del mese (da 01 a 31).
hh
Specifica l'ora del giorno (da 00 a 23).
mm
Specifica il minuto dell'ora (da 00 a 59).
SS
Specifica il secondo del minuto (da 00 a 59).
L
Indica un tempo designatore e può essere sostituito con uno spazio unico.
[ .frac]
Specifica un secondo frazionale. Può essere vuoto o un punto (.) seguito da una o più cifre decimali.
[, frac]
Specifica un secondo frazionale. Si tratta di una virgola (,) seguita da una o più cifre decimali.
[ tz]
Se il valore del parametro [ tz] è vuoto, il fuso orario locale viene utilizzato per il tempo risultante. Se il valore del parametro [ tz] è un carattere Z, il Coordinate Time Zone (UTC) viene utilizzato per il tempo risultante. Se il valore del parametro [ tz] è vuoto, viene utilizzato il valore della variabile di ambiente TimezoneInfo (TZ) per identificare l'ora risultante. Il valore del parametro [ tz] è implementato - specifico se il tempo risultante è precedente rispetto al tempo Epoch. Inoltre, se il tempo risultante non può essere rappresentato come una registrazione data / ora del file specificato dal parametro File , il comando touch esce con uno stato di errore.
-F Tenta di forzare il tocco nonostante le autorizzazioni di lettura e scrittura su un file.
-m Cambia il tempo di modifica di File. Non cambia il tempo di accesso a meno che non sia specificato anche -a .
-r RefFile Utilizza l'ora corrispondente del file specificato dalla variabile RefFile invece dell'ora corrente.
Ora Specifica la data e l'ora della nuova registrazione data / ora nel formato MMDDhhmm[ YY], dove:
MI
Specifica il mese dell'anno (da 01 a 12).
GG
Specifica il giorno del mese (da 01 a 31).
hh
Specifica l'ora del giorno (da 00 a 23).
mm
Specifica il minuto dell'ora (da 00 a 59).
AA
Specifica le ultime due cifre dell'anno. Se la variabile YY non è specificata, il valore predefinito è l'anno corrente (da 70 a 99 o da 00 a 37).

Se il valore delle cifre YY è compreso tra 70 e 99, il secolo si presume sia di 19.

Se il valore delle cifre YY è compreso tra 00 e 37, il secolo si presume sia di 20.

-t Tempo Utilizza il tempo specificato invece del tempo corrente. La variabile Tempo viene specificata nella forma decimale [ [CC]YY]MMDDhhmm[.SS] dove:
Customer Care
Specifica le prime due cifre dell'anno (da 19 a 21).
AA
Specifica le ultime due cifre dell'anno (da 00 a 99).

Se il valore delle cifre YY è compreso tra 70 e 99, si presuppone che il valore delle cifre CC sia di 19.

Se il valore delle cifre YY è compreso tra 00 e 37, si presuppone che il valore delle cifre CC sia di 20.

Per gli anni successivi al 2038, specificare l'anno nel formato yyyy .

MI
Specifica il mese dell'anno (da 01 a 12).
GG
Specifica il giorno del mese (da 01 a 31).
hh
Specifica l'ora del giorno (da 00 a 23).
mm
Specifica il minuto dell'ora (da 00 a 59).
SS
Specifica il secondo del minuto (da 00 a 59).
   
Nota:
  1. Il comando touch richiama la sottoroutine utimenstat () per modificare i tempi di modifica e di accesso del file toccato. Questo può causare il malfunzionamento del comando touch quando gli indicatori vengono utilizzati se non si possiede in realtà il file, anche se è possibile avere l'autorizzazione di scrittura al file.
  2. Non specificare il nome percorso completo /usr/bin/touch se si riceve un messaggio di errore quando si utilizza il comando touch .

Stato uscita

Questo comando restituisce i seguenti valori di uscita:

Elemento Descrizione
0 Il comando eseguito correttamente. Tutte le modifiche richieste sono state apportate.
> 0 Si è verificato un errore.

Sicurezza

HM

Gli utenti RBAC di Attenzione: Questo comando può eseguire operazioni privilegiate. Solo gli utenti privilegiati possono eseguire operazioni privilegiate. Per ulteriori informazioni su autorizzazioni e privilegi, vedere Database dei comandi privilegiati in Sicurezza. Per un elenco dei privilegi e delle autorizzazioni associate a questo comando, vedere il comando 'lssecattr o il sottocomando 'getcmdattr.

Esempi

  1. Per aggiornare i tempi di accesso e modifica di un file, inserire:
    touch program.c
    Questo imposta gli ultimi tempi di accesso e di modifica dellaprogram.cfile alla data e ora corrente. Se il comandoprogram.cil file non esiste, il comando touch crea un file vuoto con tale nome.
  2. Per evitare di creare un nuovo file, inserire:
    touch  -c program.c
  3. Per aggiornare solo il tempo di modifica, inserire:
    touch  -m *.o
    Questo aggiorna gli ultimi tempi di modifica (non i tempi di accesso) dei file che terminano con un.oestensione nella directory corrente. Il comando touch viene spesso utilizzato in questo modo per alterare i risultati del comando make .
  4. Per impostare esplicitamente i tempi di accesso e di modifica, inserire:
    touch  -c  -t 02171425 program.c
    Questo imposta le date di accesso e modifica su 1 4: 25 (2:25 p.m.) 17 febbraio dell'anno in corso.
  5. Per utilizzare la data ora di un altro file invece del tempo corrente, inserire:
    touch  -r file1 program.c
    Questo dà ilprogram.cfile la stessa ora timbrofile1.xlsx.
  6. Per toccare un file utilizzando un tempo specificato diverso dall'ora corrente, inserire:
    touch  -t 198503030303.55 program.c
    Questo dà ilprogram.cuna data / ora di 3:03:55 a.m. il 3 marzo 1985.

File

Elemento Descrizione
/usr/bin/touch Contiene il comando touch .