1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
|
21:00 <@diego71> per tutti: ricordatevi di collegarvi a #lifo-domande -> /join #lifo-domande
21:00 -!- Dereek [97408f29@gateway/web/freenode/ip.151.64.143.41] has joined #lifo
21:00 <@valhalla> come la volta scorsa, ci sarà qualcuno di noi su #lifo-domande a passare di qui le domande (stasera sarà diego71) e a dare assistenza al volo se qualcuno ha problemi
21:01 <@valhalla> oltre a diego71, sono erossi e warp10
21:01 <@valhalla> la prima cosa da fare per la lezione di stasera sarà scaricare il materiale:
21:02 -!- mediechions1 [~mediechio@host184-7-dynamic.40-79-r.retail.telecomitalia.it] has joined #lifo
21:02 <@valhalla> aprite la riga di comando, andate con cd nella directory dove avete scaricato il materiale la volta scorsa
21:02 -!- tiziano [~tiziano@host195-180-dynamic.45-79-r.retail.telecomitalia.it] has joined #lifo
21:02 <@valhalla> con ls controllate di essere nella directory giusta, dovreste vedere ``lezione_1``
21:03 <@valhalla> lì dentro, lanciate il comando ``wget http://www.lifolab.org/corsi/2014-linea_di_comando/riga_di_comando-lezione_2.tar.xz``
21:03 -!- gianluca_ [54dd6636@gateway/web/freenode/ip.84.221.102.54] has joined #lifo
21:04 <@valhalla> wget è il programma classico per scaricare file da riga di comando, nella pagina di manuale trovate millemila opzioni per fare TUTTO
21:04 -!- turbometalskater [~turbometa@151.95.206.99] has joined #lifo
21:04 -!- gianluca_ [54dd6636@gateway/web/freenode/ip.84.221.102.54] has quit [Client Quit]
21:05 <@valhalla> (chiedo scusa, nel materiale il comando che ho appena scritto ha l'indirizzo sbagliato, nelle prossime lo metto a posto)
21:06 <@valhalla> se avete scaricato il file (se non avete visto il comando per farlo, chiedete pure sul canale #lifo-domande e verrà ripetuto), proseguiamo
21:07 <@valhalla> il file si chiama .tar.xz perché è un archivio tar compresso con xz
21:07 <@valhalla> lo si pu`o estrarre con ``tar -x -v -f dispense_2.tar.xz``
21:07 <@valhalla> ehm
21:07 <@valhalla> ``tar -x -v -f riga_di_comando-lezione_2.tar.xz``
21:07 -!- thefantaman [~thefantam@dynamic-adsl-78-14-187-93.clienti.tiscali.it] has joined #lifo
21:08 -!- faziel [4f1813dd@gateway/web/freenode/ip.79.24.19.221] has quit [Ping timeout: 245 seconds]
21:08 <@valhalla> -x sta per "estrai", -v per "verboso", ovvero gli si fa stampare quello che sta facendo (ed è un'opzione che quasi tutti i comandi hanno), -f è seguita dal file su cui lavorare
21:09 <@valhalla> le versioni moderne di tar si accorgono già che il file è compresso (e in che formato) e provvedono a scompattare nel modo giusto
21:09 <@valhalla> a questo punto potete usare ``ls`` e ci saranno due directory (``lezione_1 lezione_2`` e un file ``riga_di_comando-lezione_2.tar.xz``
21:09 <@valhalla> entriamo nella directory della seconda lezione
21:10 <@valhalla> ``cd lezione_2``, che possiamo scrivere premendo ``cd le[tab]2``
21:10 <@valhalla> e iniziamo con l'argomento della serata, che è manipolare file e directory
21:10 <@valhalla> così dopo questa serata si pu`o veramente usare la riga di comando al posto del file manager
21:11 <@valhalla> nel frattempo: ci sono domande?
21:11 <@diego71> < aldagaau> che differenza passa tra .tar.gz (classico) e tar.xz?
21:12 <@valhalla> xz è un formato di compressione più recente ed un po' più efficiente
21:12 -!- pxk [~pxk@host147-124-dynamic.56-82-r.retail.telecomitalia.it] has quit []
21:13 <@valhalla> le alternative che si usano di solito sono .gz per la compatibilità con l'universo, .bz2 e .xz che lo sta sostituendo come potenzialmente non supportati da tutti, ma che comprimono di più
21:13 -!- faziel [4f1813dd@gateway/web/freenode/ip.79.24.19.221] has joined #lifo
21:13 <@valhalla> altre domande?
21:13 <@diego71> nessuna domanda
21:14 <@valhalla> allora, proseguiamo e creiamo una directory in cui fare le nostre prove di stasera, con ``mkdir esercizi``
21:14 <@valhalla> se tutto va bene, non otterremo risposta, e questo è un comportamento abbastanza standard dei programmi da riga di comando
21:14 <@valhalla> se tutto va bene, tendono ad essere silenziosi, a parlare solo se qualcosa è andato storto
21:15 <@valhalla> per`o possiamo vedere il risultato con un bel ``ls``, e poi entrare nella directory creata con ``cd esercizi``
21:15 <@valhalla> adesso creiamo un'altra directory ancora, ``mkdir altra_dir``
21:15 -!- frank976 [~frank976@host55-152-dynamic.54-79-r.retail.telecomitalia.it] has joined #lifo
21:16 -!- frank976 [~frank976@host55-152-dynamic.54-79-r.retail.telecomitalia.it] has quit [Client Quit]
21:16 <@valhalla> ``ls`` per vedere il risultato, e poi proviamo a cancellarla
21:16 <@valhalla> ``rmdir altra_dir/`` (sempre scrivendo rmd[tab] a[tab])
21:16 <@valhalla> adesso proviamo a ricrearla, ma riempiendola:
21:17 <@valhalla> ``mkdir -p altra_dir/una_dir_ancora``
21:17 <@valhalla> ls
21:17 -!- frank976 [~frank976@host55-152-dynamic.54-79-r.retail.telecomitalia.it] has joined #lifo
21:17 <@valhalla> e poi ``ls altra_dir/`` e vediamo che contiene una seconda directory
21:18 <@valhalla> se proviamo ad usare ``rmdir altra_dir/`` ci risponderà qualcosa tipo ``rmdir: failed to remove ‘altra_dir/’: Directory not empty``
21:18 <@valhalla> questo perché rmdir rimuove le directory solo se sono vuote (il che lo rende abbastanza sicuro da usare con disinvoltura)
21:18 <@valhalla> per poterla cancellare dovremo cancellare le due directory una per volta:
21:19 <@valhalla> ``rmdir altra_dir/una_dir_ancora/`` e poi ``rmdir altra_dir/``
21:19 <@valhalla> domande?
21:19 <@diego71> < tafaRU> diego71: diff tra rm e rmdir
21:19 <@valhalla> rmdir come dicevo cancella solo le directory e solo se sono vuote
21:19 <@valhalla> rm lo vedremo più avanti, cancella anche i file, e cancella anche le directory piene
21:20 <@valhalla> (usato con le opzioni giuste)
21:20 <@valhalla> in teoria non ci sarebbe bisogno di rmdir, ma in certi casi è utile usarlo perché, come dicevo prima, è meno facile fare danni per aver scritto male
21:21 <@valhalla> con rm se si sbaglia ad indicare la directory da cancellare, si cancella ed è andata
21:21 <@valhalla> con rmdir non si perdono file :)
21:21 <@valhalla> altre domande?
21:21 <@diego71> no
21:21 <@valhalla> passo successivo, cp serve per copiare file e directory
21:22 -!- madi [~madi@unaffiliated/madi] has joined #lifo
21:22 <@valhalla> ``cp ../dispensa.rst ./un_file.txt``
21:22 <@valhalla> con questo abbiamo copiato il file dispensa.rst che c'era nella directory sopra a quella corrente (..) nella directory corrente (.) con il nome un_file.txt
21:23 <@valhalla> possiamo vedere con ``ls`` cosa abbiamo fatto, e magari anche con ``ls -l``
21:23 <@valhalla> usato in questo modo, cp copia solo i file, per copiare anche directory bisogna aggiungere l'opzione -r
21:24 <@valhalla> se si danno solo due parametri come in questo caso il primo è il nome di partenza, il secondo è il nome di destinazione
21:24 <@valhalla> se si danno più parametri, i primi sono i file da copiare, l'ultimo deve essere una directory, e tutti i file verranno copiati in quella directory (con il loro nome originale)
21:25 <@valhalla> ad esempio, inziiamo creando un altro file con ``touch altro_file.txt``
21:25 <@valhalla> touch è un comando che serve per dire al computer "imposta la data di ultima modifica di questo file ad "adesso", e se non esiste lo crea
21:26 <@valhalla> è comodo per fare esempi, ma a volte lo si usa anche in casi reali
21:26 <@valhalla> a questo punto, creiamo una directory, ``mkdir directory`` e ci copiamo più file:
21:26 <@valhalla> ``cp un_file.txt altro_file.txt directory/``
21:27 <@valhalla> ``ls directory/`` e vediamo che si è riempita
21:27 <@valhalla> domande?
21:27 -!- tafaRU [~Alex@87.253.117.217] has left #lifo []
21:27 -!- tafaRU [~Alex@87.253.117.217] has joined #lifo
21:27 <@diego71> turbometalskater> sry, domanda in ritardo: esiste un sistema di cestino per l'rm da shell?
21:27 <@valhalla> no, non esiste un sistema di cestino, quello che viene cancellato viene cancellato
21:28 <@valhalla> esiste l'opzione ``-i`` con la quale viene chiesta conferma file per file, ma la vediamo dopo
21:28 <@valhalla> diego71: altre domande?
21:28 -!- rasalgethi [~quassel@host184-236-dynamic.45-79-r.retail.telecomitalia.it] has quit [Quit: http://quassel-irc.org - Chatta con comodo. Ovunque.]
21:29 <@valhalla> ok, prosegui
21:29 <@valhalla> proseguo
21:30 <@valhalla> a questo punto, possiamo creare un altro file nel modo "classico" in cui si creano: aprendolo con un programma
21:30 -!- taumaturgo [5d93b50d@gateway/web/freenode/ip.93.147.181.13] has joined #lifo
21:30 <@valhalla> ``nano terzo_file.txt``, possiamo scriverci qualcosa a caso
21:31 <@valhalla> e poi premere ctrl-x per uscire (lo dice nell'help in basso a sinistra)
21:31 <@valhalla> ``ls`` e vediamo che è apparso
21:31 <@valhalla> ``less terzo_file.txt`` e possiamo controllare che contiene effettivamente quello che ci abbiamo scritto
21:31 <@valhalla> (q per uscire da less, come già detto la volta scorsa)
21:32 <@valhalla> diego71: domande?
21:32 <@diego71> < Fra_Supercar83> possibile ordinare in un preciso ordine l'output del comando 'ls'?
21:32 <@valhalla> sì, è possibile
21:32 <@valhalla> con ``man ls`` si trovano le opzioni per ordinare in base a vari criteri
21:33 <@valhalla> ad esempio, ``-t`` ordina per data (di solito lo si usa assieme a ``-l`` in modo da vedere anche la data in questione)
21:33 <@valhalla> oppure ``-S`` per ordinare per dimensioni (anche qui, di solito usato assieme a ``-l`` e ``-h``)
21:34 <@valhalla> con ``-r`` si inverte l'ordine, in entrambi i casi
21:34 <@valhalla> un classico è ``ls -lrt`` per vedere in fondo qual'è il file pi`u recente
21:35 <@valhalla> (con ls ed altri comandi le opzioni da un carattere solo possono essere riassunte con un ``-`` solo)
21:35 <@valhalla> anche ricordato come ``ls -lart`` :)
21:35 <@valhalla> (-a stampa anche i file nascosti)
21:35 <@valhalla> altre domande?
21:36 <@valhalla> (ah, e l'altro classico è ls -lrSh per scoprire quali sono i file grossi che occupano spazio da cancellare)
21:36 <@valhalla> ok, proseguiamo con rm
21:37 <@valhalla> rm, come dicevo prima, cancella i file senza pietà
21:37 <@valhalla> quindi fate *molta* attenzione a quello che scrivete :)
21:37 <@valhalla> per prudenza, mettiamo sempre l'opzione ``-i``, che così si deve dare conferma
21:37 <@valhalla> inziiamo da ``rm -i un_file.txt``
21:38 <@valhalla> quando chiede se cancellare il file, premiamo y (se il sistema è in inglese) o s (se è in italiano) e diamo invio
21:38 <@valhalla> dopo aver controllato che stia cancellando il file giusto
21:39 <@valhalla> (y dovrebbe funzionare sempre, anche con il sistema in italiano, comunque)
21:39 <@valhalla> adesso proviamo ``rm -i directory/``
21:40 <@valhalla> e rm ci risponderà che non pu`o farlo, perché directory è una directory
21:40 <@valhalla> per poter cancellare le directory bisogna usare l'opzione -r, ovvero "ricorsivo", che prima cancella i contenuti e poi i contenitori
21:40 <@valhalla> ``rm -r -i directory``
21:41 <@valhalla> (e avendo usato -i ci chieder`a conferma per ogni singolo file e directory che viene cancellata
21:41 <@valhalla> diego71: domande?
21:41 <@valhalla> ok, proseguamo
21:41 <@diego71> no
21:41 -!- paolettopn [~paolo@unaffiliated/paolettopn] has joined #lifo
21:42 <@valhalla> con ``ls -l`` vediamo che all'inizio c'`e una successine di caratteri tipo ``-rw-r--r--``
21:42 -!- paolettopn [~paolo@unaffiliated/paolettopn] has left #lifo []
21:43 <@valhalla> quelli sono i permessi dei file: il primo carattere indica il tipo (- per un file, d per una directory) e quelli successivi indicano i permessi di lettura, scrittura ed esecuzione per il proprietario del file, il gruppo a cui apparteiene il file e per tutti gli altri
21:43 <@valhalla> i permessi sono una cosa gestibile anche da interfaccia grafica, se qualcuno non li conosce ditemelo che ne parlo a fine lezione
21:43 <@valhalla> per modificarli da riga di comando, si usa il comando chmod
21:44 <@valhalla> che prende le opzioni in modo un po' diverso dal solito:
21:44 <@valhalla> innanzitutto gli si pu`o dare la somma dei permessi che si vogliono dare al file: ovvero
21:45 <@valhalla> esecuzione vale 1, scrittura vale 2, lettura vale 4
21:45 <@valhalla> per dare il permesso di scrittura e lettura si usa 6
21:45 <@valhalla> lettura ed esecuzione 5
21:45 <@valhalla> lettura, scrittura ed esecuzione7
21:45 <@valhalla> e si devono scrivere i permessi per tutti e tre le categorie
21:45 <@valhalla> quindi ad esempio:
21:46 <@valhalla> ``chmod 666 altro_file.txt`` da i permessi di lettura e scrittura a tutti
21:46 <@valhalla> ``chmod 644 altro_file.txt`` da i permessi di lettura e scrittura al proprietario, ma gli altri possono solo leggere
21:47 <@valhalla> ``chmod 755 altro_file.txt`` da il permesso di lettura, scrittura ed esecuzione al proprietario, lettura ed esecuzione a tutti (è un permesso classico per i programmi
21:47 <@valhalla> dopo aver dato quei comandi, potete usare ls -l per veder cambiare i permessi
21:47 <@valhalla> domande?
21:48 <@diego71> < stefano_> se non è ot puoi spiegare umask e come si usa?
21:48 <@valhalla> umask serve per impostare i permessi di default con il quale vengono creati i file
21:48 <@valhalla> ma spiegare come si usa è un po' troppo per questa lezione
21:49 <@valhalla> (anche perché richiede di fare un po' di conti in base 8)
21:49 <@valhalla> altre domande?
21:49 -!- popi [5230eb0f@gateway/web/freenode/ip.82.48.235.15] has joined #lifo
21:50 <@diego71> < aldagaau> mi è apparso altro_file.txt* (con asterisco) perché?
21:50 <@valhalla> l'asterisco sta ad indicare che quel file è un eseguibile (ovvero, ha i permessi di esecuzione)
21:50 -!- Delfino1983 is now known as Delfino1983_0u7
21:50 <@valhalla> se si ha la riga di comando a colori è possibile che non ci sia quell'asterisco, ma ad esempio che il file sia evidenziato il verde
21:50 <@valhalla> (o in qualche altro colore a seconda delle impostazioni)
21:51 -!- Delfino1983_0u7 is now known as Delfino1983_Rai3
21:51 <@diego71> < erio> il nome file è diventatodi colore verde, anche questo perchè è eseguibile?
21:51 <@valhalla> esatto :)
21:51 <@diego71> < aldagaau> però il mio vicino di pc ce l'ha verde come me ma senza asterisco. Creato assieme e con stessi permessi
21:52 <@valhalla> sì, dipende dalle impostazioni della shell (che possono cambiare a seconda della distribuzione)
21:52 <@valhalla> sono varianti che si trovano in giro
21:52 <@valhalla> sempre per evidenziare il fatto che il file sia eseguibile
21:53 <@valhalla> in modo che lo si veda ad occhio anche usando ``ls`` senza l'opzione ``-l``
21:53 <@valhalla> se si è su una shell diversa dal solito, si può usare ``ls -l`` e poi ``ls`` su qualche file per vedere cosa fa
21:53 <@valhalla> altre domande?
21:54 <@diego71> < tiziano> si può usare chmod indicando i permessi in formato "-rw-r--r--"
21:54 -!- Ringmeister84 [~Ringmeist@ppp-222-99.21-151.libero.it] has joined #lifo
21:54 <@valhalla> purtroppo no, ma c'è un altro formato
21:55 <@valhalla> usando una delle lettere u per utente, g per gruppo, o per other oppure a per all (tutti assieme) seguito da un + o un - e dal permesso che si mette o toglie rispettivamente
21:55 <@valhalla> ad esempio ``chmod a-x altro_file.txt`` toglie a tutti il permesso di esecuzione
21:56 <@valhalla> mentre ``chmod g+w`` da il permesso di scrittura al gruppo
21:56 <@valhalla> o ``chmod o-r altro_file.txt`` toglie il permesso di lettura agli altri (ovvero chi non è nel gruppo ne' è il proprietairo)
21:56 <@valhalla> altre domande?
21:57 <@diego71> < erio> se do chmod 744 mi esce : -rwxr--r-- 1, non manca il gruppo o gli altri ?
21:57 <@valhalla> no, ci sono il proprietario "rwx", il gruppo "r--" e gli altri "r--"
21:58 <@valhalla> diego71: altre domande?
21:58 <@valhalla> ok, proseguiamo
21:58 <@diego71> no
21:59 <@valhalla> altri comandi utili per sostituire il file manager con la shell: per sapere lo spazio su disco occupato dai file
21:59 <@valhalla> con ``ls -l`` si ha solo la dimensione dei file, non delle directory
21:59 <@valhalla> (o meglio, si ha lo spazio occupato dalla directory stessa, non dai file che contiene)
21:59 <@valhalla> ``cd ..` per tornare alla directory sopra
22:00 <@valhalla> ``ls -l -h`` ci darà un paio di file da 1.pochi K e la directory esercizi da 4.0K (probabilmente)
22:00 <@valhalla> c'è il comando du che invece calcola le dimensioni dei file contenuti
22:01 <@valhalla> ``du -h .`` calcola le dimensioni di tutti i contenuti delle directory corrente e delle sue sottodirectory
22:01 <@valhalla> mentre ``du -s -h .`` calcola solo il riassunto finale della directory che gli è stata indicata esplicitamente
22:02 <@valhalla> soprattutto con file piccoli, il risultato potrebbe essere "sorprendente"
22:03 <@valhalla> come la directory esercizi che nel mio caso contiene un file da 0 byte ed uno da 17 byte, ma le dimensioni totali sono di 8.0K
22:03 <@valhalla> dipende dalla struttura del filesystem, ed è argomento decisamente OT
22:03 <@valhalla> ma in generale, se state cercando cose grosse da cancellare perché avete finito lo spazio, du da la risposta giusta :)
22:04 <@valhalla> altro comando per conoscere spazio occupato: ``df`` dice quanto spazio libero/occupato c'è su una partizione
22:04 <@valhalla> ``df -h`` e basta su tutte le partizioni montate
22:04 <@valhalla> ``df -h <directory>`` solo sulla partizione che contiene quella directroy
22:04 <@valhalla> diego71: domande?
22:05 <@diego71> < tiziano> esiste un comando per vedere quanti file ci sono nelle directory?
22:05 <@valhalla> non c'è un comando diretto che lo faccia, ma lo si ottiene combinando due comandi come vedremo nella prossima lezione :)
22:06 <@diego71> <MrPan> esiste un parametro del comando du (o altro) che permetta di vedere la grandezza di un singolo file contenuto in una directory o sub
22:06 <@valhalla> per vedere la grandezza del singolo file si pu`o usare ls
22:07 <@valhalla> ad esempio ls -l -h ``esercizi/terzo_file.txt``
22:08 <@valhalla> se si usa ``du esercizi/terzo_file.txt`` si ottiene lo spazio occupato da quel file sul disco
22:09 <@valhalla> oppure per vederli tutti ``du -a`` che entra anche nelle sottodirectory e fa vedere tutti i file
22:09 <@valhalla> diego71: altre domande?
22:09 <@diego71> no
22:11 <@valhalla> ls
22:11 <@valhalla> ehm, sorry :)
22:11 <@valhalla> abbiamo iniziato la serata scompattando un file con tar
22:12 <@valhalla> adesso concludiamola creando una tarball :)
22:12 <@valhalla> (tarball = archivio tar)
22:12 <@valhalla> ``tar -c -v -f esercizi.tar esercizi/`` permette di creare una tarball, non compressa
22:13 <@valhalla> che contiene una directory (esercizi) e tutti i suoi contenuti
22:13 <@valhalla> ma di solito la si vuole anche comprimere, quindi o si usa l'opzione ``-z`` per comprimere con gzip, oppure ``-J`` per comprimere con xz
22:13 <@valhalla> quindi tar -c -J -v -f esercizi.tar.xz esercizi/
22:13 <@valhalla> adesso possiamo vedere i contenuti con l'opzione ``-t`` (senza scompattarla)
22:14 <@valhalla> ``tar -t esercizi.tar``
22:14 <@valhalla> oppure ``tar -t esercizi.tar.xz``
22:14 <@valhalla> in automatico tar si accorge se deve scompattare con qualche formato
22:14 <@valhalla> ls
22:14 <@valhalla> ehm, di nuovo...
22:14 <@valhalla> diego71: domande?
22:15 <@diego71> < polva> nel caso di du -a il numero che è espresso accanto al file cosa sono? Kb? sono tutti multipli di 4
22:15 <@valhalla> sì, lo sono (e sono multipli di 4K perché la maggior parte dei filesystem usati comunemente ha quello come block size)
22:16 <@valhalla> (quindi un file anche pi`u piccolo occupa comunque 4K)
22:16 <@valhalla> è un default specifico di du, perché ad esempio ls di default usa i byte
22:16 <@valhalla> altre domande?
22:16 <@diego71> < tafaRU> diego71: tar -t esercizi.tar mi dovrebbe mostrare il contenuto?
22:17 -!- albertux [~Icedove@dynamic-adsl-78-14-226-141.clienti.tiscali.it] has quit [Quit: Alla prossima...]
22:17 <@valhalla> manca la -f per specificare su che file deve lavorare
22:17 <@valhalla> ``tar -t -f esercizi.tar``
22:18 -!- kyoshoevolva [~kyoshoevo@net-93-145-188-122.cust.dsl.teletu.it] has quit [Quit: Sto andando via]
22:18 <@valhalla> (i parametri per tar indicano file da aggiungere o da trovare nell'archivio, a seconda di quello che sta facendo)
22:18 <@valhalla> (il nome della tarball si da con -f)
22:18 <@valhalla> diego71: altre domande?
22:19 <@valhalla> sorry, ho visto che ho sbagliato io a scriverlo sopra, se vi rimane bloccato usate ctrl-c per chiudere
22:19 <@valhalla> altre domande?
22:19 <@diego71> < tiziano> scrivere tar -t esercizi.tar.xz oppure tar -tesercizi.tar.xz (senza spazio) è indifferente?
22:19 -!- Delfino1983_Rai3 is now known as Delfino1983
22:20 <@valhalla> in teoria, sì, si può anche scrivere ``tar -tfesercizi.tar.xz`` (con la f)
22:20 <@valhalla> in pratica, non tutti i comandi accettano queste cose
22:20 <@valhalla> e in generale è illeggibile e facile a causare errori
22:20 <@valhalla> quindi meglio evitare :)
22:21 <@valhalla> altre domande?
22:21 <@diego71> < Fra_Supercar83> Non ho ben capito l'opzione '-f' nel comando 'tar'
22:21 <@valhalla> tar si aspetta due cose su cui lavorare:
22:22 <@valhalla> una tarball e dei file
22:22 <@valhalla> la tarball si indica con -f
22:22 <@valhalla> tutto il resto sono considerati dei file
22:22 -!- malo [~malo@217.203.139.21] has quit [Quit: Sto andando via]
22:22 <@valhalla> se si sta creando la tarball, sono i file da aggiungere alla stessa
22:22 <@valhalla> (file e directory, in modo ricorsivo)
22:23 <@valhalla> se si sta estraendo, si possono estrarre solo alcuni dei file contenuti, e li si indica sempre in quel modo
22:23 -!- Ringmeister84 [~Ringmeist@ppp-222-99.21-151.libero.it] has quit [Ping timeout: 264 seconds]
22:24 <@valhalla> ad esempio ``tar -t -f esercizi.tar esercizi/altro_file.txt`` elenca solo il file esercizi/altro_file.txt (se presente nella tarball) e non tutti gli altri contenuti
22:24 <@valhalla> (e con (``-x`` al posto di ``-t`` lo estrae))
22:24 <@diego71> < gioque> per estrarre un file tar in una directory specifica?
22:25 <@valhalla> il modo pi`u semplice è usare cd per spostarsi in quella directory
22:25 <@valhalla> c'è un opzione per farlo, ma è molto pi`u facile sbagliare, meglio usare cd
22:25 <@valhalla> diego71: prossima domanda?
22:25 -!- DD3my [~DD3my@unaffiliated/dd3my] has quit [Quit: Sto andando via]
22:25 <@diego71> < stefano_> per aggiungere un file all'archivio creato si fa con -A? come?
22:26 <@valhalla> in teoria sì, si usa -A
22:26 -!- Letozaf_ [~Letozaf@95.236.254.248] has joined #lifo
22:26 <@valhalla> sinceramente non so se funzioni con i file compressi
22:27 <@valhalla> perché ad essere compresso è il tar finale, per cui per concatenare dovrebbe scomprimere, concatenare e ricomprimere, e non so se lo faccia
22:27 <@valhalla> andrebbe provato
22:27 <@valhalla> altre domande?
22:28 -!- giocat [~giocat@host22-119-dynamic.5-87-r.retail.telecomitalia.it] has quit [Quit: Sto andando via]
22:28 <@valhalla> ecco, vedo che erossi ci ha provato
22:28 <@valhalla> < erossi> tar: Cannot concatenate compressed archives
22:28 <@valhalla> non funziona con gli archivi compressi
22:29 <@valhalla> si deve scomprimere l'archivio, aggiungere il file, ricomprimerlo
22:29 -!- mediechions1 [~mediechio@host184-7-dynamic.40-79-r.retail.telecomitalia.it] has left #lifo []
22:29 <@valhalla> se non ci sono altre domande direi che si pu`o finire prima che io scriva un'altro ls nella finestra sbagliata :)
22:30 <@valhalla> < erio> ho provato : tar -xf esercizi.tar altro_file.txt e mi dà "tar: altro_file.txt: non trovato nell'archivio
22:31 -!- depaolim [~depaolim@host68-237-dynamic.6-79-r.retail.telecomitalia.it] has quit [Quit: Leaving]
22:31 <@valhalla> dando ``tar -t -f esercizi.tar`` dovreste trovare che quella tarball non contiene il file altro_file.txt, ma il file esercizi/altro_file.txt
22:31 -!- Letozaf_ [~Letozaf@95.236.254.248] has left #lifo []
22:31 <@valhalla> ovvero, tar vuole tutto il path con cui quel file è indicato nella tarball, non basta solo il nome del file
22:32 <@valhalla> quindi per estrarre quel file dovrete dare ``tar -xf esercizi.tar esercizi/altro_file.txt`` e verrà estratto nella directory esercizi
22:32 <@valhalla> ad esempio, ``mkdir altra_dir``, ``cd altra_dir`` e poi ``tar -xf ../esercizi.tar esercizi/altro_file.txt`` e potete vedere il risultato
22:32 <@valhalla> diego71: altre domande?
22:32 -!- MrPan [~marcopani@cable-78-34-86-86.netcologne.de] has left #lifo []
22:33 <@diego71> sembra di no
22:34 <@valhalla> ok, ricordo a chi è arrivato tardi:
22:34 <@valhalla> abbiamo un account su friendica (social network distribuito) i cui post vengono riportati anche su identica (idem)
22:34 <@valhalla> se volete ricevere un avviso/promemoria per la prossima lezione potete seguire quegli account
22:34 <@valhalla> http://social.gl-como.it/profile/lifo ---> su friendica
22:35 <@valhalla> https://identi.ca/lifo ---> su identica
22:35 <@valhalla> http://social.gl-como.it/dfrn_poll/lifo ---> feed rss dell'account su friendica, se non siete iscritti a quei social network
22:35 <@valhalla> detto questo, chiudo la lezione e mi metto a preparare il log da pubblicare
|