L'abilitazione del timestamp nell'output del comando della cronologia ci aiuta a trovare quando un determinato comando viene eseguito in Linux. Abbiamo già visto come abilitare il timestamp nella cronologia di Bash . Oggi vediamo come abilitare il timestamp per la history
comando nella shell Zsh in Linux.
Abilita timestamp per comando cronologia in Zsh Shell
Puoi mostrare la data e l'ora nell'output della cronologia di Bash in Linux utilizzando HISTTIMEFORMAT
variabile d'ambiente. Tuttavia, non è necessario impostare alcuna variabile env in Zsh. Zsh, per impostazione predefinita, ha alcuni flag integrati per mostrare la data e l'ora nell'output del comando della cronologia.
Per prima cosa, vediamo l'elenco dei comandi precedentemente eseguiti in zsh
sessione utilizzando history
comando:
% history
Risultato di esempio:
1 lsb_release -a
2 uname -r
3 hostname
4 ls -l
5 touch ostechnix.txt
6 clear
Come puoi vedere, la history
il comando non visualizza il timestamp. Visualizza solo il numero di prefisso di ogni comando.
Per abilitare il timestamp per il comando della cronologia, ad esempio mostrare data e ora in tutti i comandi nella shell zsh, usa -f
segnala con history
comando:
% history -f
Ora vedrai la data e l'ora nella history
output del comando nella shell zsh:
1 11/28/2020 17:00 lsb_release -a
2 11/28/2020 17:00 uname -r
3 11/28/2020 17:00 hostname
4 11/28/2020 17:00 ls -l
5 11/28/2020 17:00 touch ostechnix.txt
6 11/28/2020 17:00 clear
7 11/28/2020 17:01 history
Qui, il -f
flag viene utilizzato per stampare data e ora complete nel 'US MM/DD/YY hh:mm'
formato
Se desideri stampare timbri completi di data e ora nel 'European dd.mm.yyyy hh:mm'
formato, usa -E
bandiera.
% history -E
Risultato di esempio:
1 28.11.2020 17:00 lsb_release -a
2 28.11.2020 17:00 uname -r
3 28.11.2020 17:00 hostname
4 28.11.2020 17:00 ls -l
5 28.11.2020 17:00 touch ostechnix.txt
6 28.11.2020 17:00 clear
7 28.11.2020 17:01 history
8 28.11.2020 17:06 history -f
Allo stesso modo, per stampare la data e l'ora in 'ISO8601 yyyy-mm-dd hh:mm'
formato, usa -i
bandiera:
% history -i
Risultato di esempio:
1 2020-11-28 17:00 lsb_release -a
2 2020-11-28 17:00 uname -r
3 2020-11-28 17:00 hostname
4 2020-11-28 17:00 ls -l
5 2020-11-28 17:00 touch ostechnix.txt
6 2020-11-28 17:00 clear
7 2020-11-28 17:01 history
8 2020-11-28 17:06 history -f
9 2020-11-28 17:18 history -E
Se vuoi stampare solo l'ora, usa -d
bandiera.
% history -d
Risultato di esempio:
1 17:00 lsb_release -a
2 17:00 uname -r
3 17:00 hostname
4 17:00 ls -l
5 17:00 touch ostechnix.txt
6 17:00 clear
7 17:01 history
8 17:06 history -f
9 17:18 history -E
10 17:18 history -i
Visualizza data e ora nell'output della cronologia utilizzando fc
comando
Un altro modo per abilitare i timestamp nell'output della cronologia in zsh shell è utilizzare fc
comando. Il fc
comando, abbreviazione di f ix c ommands, è un comando integrato nella shell utilizzato per elencare, modificare e rieseguire i comandi inseriti più di recente in una shell interattiva.
Per visualizzare il timestamp completo nell'output della cronologia utilizzando fc
comando, esegui semplicemente:
% fc -lf
Risultato di esempio:
1 11/28/2020 17:00 lsb_release -a
2 11/28/2020 17:00 uname -r
3 11/28/2020 17:00 hostname
4 11/28/2020 17:00 ls -l
5 11/28/2020 17:00 touch ostechnix.txt
6 11/28/2020 17:00 clear
7 11/28/2020 17:01 history
8 11/28/2020 17:06 history -f
9 11/28/2020 17:18 history -E
10 11/28/2020 17:18 history -i
11 11/28/2020 17:19 history -d
Come accennato in precedenza, il -f
flag stampa timbri di data a tempo pieno nel formato USA cioè 'MM/DD/YY hh:mm'
.
Se desideri visualizzare i timestamp nell'output della cronologia in formato europeo che è dd.mm.yyyy hh:mm
, usa -E
bandiera:
% fc -lE
Risultato di esempio:
1 28.11.2020 17:00 lsb_release -a
2 28.11.2020 17:00 uname -r
3 28.11.2020 17:00 hostname
4 28.11.2020 17:00 ls -l
5 28.11.2020 17:00 touch ostechnix.txt
6 28.11.2020 17:00 clear
7 28.11.2020 17:01 history
8 28.11.2020 17:06 history -f
9 28.11.2020 17:18 history -E
10 28.11.2020 17:18 history -i
11 28.11.2020 17:19 history -d
12 28.11.2020 17:43 fc -lf
Per visualizzare i timestamp nel formato ISO8601 (cioè yyyy-mm-dd hh:mm
), usa -i
bandiera:
% fc -li
Risultato di esempio:
1 2020-11-28 17:00 lsb_release -a
2 2020-11-28 17:00 uname -r
3 2020-11-28 17:00 hostname
4 2020-11-28 17:00 ls -l
5 2020-11-28 17:00 touch ostechnix.txt
6 2020-11-28 17:00 clear
7 2020-11-28 17:01 history
8 2020-11-28 17:06 history -f
9 2020-11-28 17:18 history -E
10 2020-11-28 17:18 history -i
11 2020-11-28 17:19 history -d
12 2020-11-28 17:43 fc -lf
13 2020-11-28 18:01 fc -lE
Se vuoi mostrare solo l'ora, usa -d
bandiera:
% fc -ld
Risultato di esempio:
1 17:00 lsb_release -a
2 17:00 uname -r
3 17:00 hostname
4 17:00 ls -l
5 17:00 touch ostechnix.txt
6 17:00 clear
7 17:01 history
8 17:06 history -f
9 17:18 history -E
10 17:18 history -i
11 17:19 history -d
12 17:43 fc -lf
13 18:01 fc -lE
14 18:02 fc -li
Puoi anche visualizzare l'output della cronologia con timestamp a partire da una voce specifica nella cronologia. Ad esempio, per elencare l'output della cronologia a partire dal 5° comando con timestamp in zsh, esegui:
% fc -li 5
Risultato di esempio:
5 2020-11-28 17:00 touch ostechnix.txt
6 2020-11-28 17:00 clear
7 2020-11-28 17:01 history
8 2020-11-28 17:06 history -f
9 2020-11-28 17:18 history -E
10 2020-11-28 17:18 history -i
11 2020-11-28 17:19 history -d
12 2020-11-28 17:43 fc -lf
13 2020-11-28 18:01 fc -lE
14 2020-11-28 18:02 fc -li
15 2020-11-28 18:05 fc -ld
Per maggiori dettagli, fare riferimento alla pagina man:
% man zsh
% man fc
Stai usando Pesce guscio? Consulta la seguente guida per abilitare il timestamp in Fish shell:
- Abilita timestamp per comando cronologia in Fish Shell