C'è una differenza sostanziale tra i due. Touchè un comando usato per timestamp di un file. Il >simbolo è un redirector di output standard.
Spiegazione dell'uso dei due
Utilizzo del tocco
Se il file non esiste, verrà creato il file.
Il tocco è comunemente usato per creare bandiere. Ad esempio, se vuoi trovare tutti i file tra due volte sul tuo sistema, puoi usare questa sequenza di comandi:
$ touch -t 201609292200 starttime
$ touch -t 201609292300 endtime
Questo creerà i seguenti file (o cambierà il timestamp se esistono):
-rw-rw-r-- 1 ljames ljames 0 Sep 29 23:00 endtime
-rw-rw-r-- 1 ljames ljames 0 Sep 29 22:00 starttime
Ora puoi usare find per visualizzare o elaborare tutti i file che sono stati modificati in quell'ora (ora tra questi due timestamp dei file, ovvero tra le 22:00 e le 23:00 del 29 settembre 2016).
$ find ~/ -newer starttime ! -newer endtime -printf "%M %Tm/%Td %TH:%TM %TM %p\n"
Questo è un output parziale del comando find sopra:
-rw-rw-r-- 09/29 22:08 08 /home/users/l/j/ljames/.thunderbird/lj7p62iq.default/gcontactsync/google_feed_backups/apollothethird@gmail.com_groups.xml
-rw-rw-r-- 09/29 22:08 08 /home/users/l/j/ljames/.thunderbird/lj7p62iq.default/gcontactsync/google_feed_backups/apollothethird@gmail.com.xml
-rw-rw-r-- 09/29 22:08 08 /home/users/l/j/ljames/.thunderbird/lj7p62iq.default/gcontactsync/address_book_backups/abook.mab.bak
-rw-rw-r-- 09/29 23:00 00 /home/users/l/j/ljames/endtime
drwx------ 09/29 22:44 44 /home/users/l/j/ljames/.config/google-chrome/Default/Extensions/Temp
drwx------ 09/29 22:44 44 /home/users/l/j/ljames/.config/google-chrome/Default/Extensions/fahmaaghhglfmonjliepjlchgpgfmobi
drwx------ 09/29 22:44 44 /home/users/l/j/ljames/.config/google-chrome/Default/Extensions/fahmaaghhglfmonjliepjlchgpgfmobi/1.337.0_0
Utilizzo del reindirizzamento dell'output
Il simbolo di reindirizzamento reindirizzerà l'output standard sul file specificato. A seconda delle impostazioni del clobber / noclobber, se non riesce. Noclobber creerà il file solo se non esiste.
Esistono diverse versioni dell'output di reindirizzamento che include:
> - Reindirizza l'output standard. Crea o sovrascrivi il file esistente.
>> - Appendice di reindirizzamento. Crea o aggiungi a un file esistente.
> & - Reindirizza sia l'output standard sia l'errore standard.
>> & - Reindirizza / accoda sia l'output standard sia l'errore standard
Potremmo usare il nostro findcomando sopra per reindirizzare il contenuto di tutti i file creati nell'ora specificata su un file che potremmo registrare e studiare in seguito:
$ find ~/ -newer starttime ! -newer endtime -printf "%M %Tm/%Td %TH:%TM %TM %p\n" > ~/files.log
file.txtesiste già e non è vuoto, certamente no.