Vi è capitato di eseguire un cron che svolge del lavoro per voi e voler salvarne l'output su un file che abbia come nome la data e l'ora (timestamp) di esecuzione, ma non funziona? Dopo aver dato un bel crontab -e basta scrivere così:
Perché funzioni è infatti fondamentale fare l'escaping dei simboli di percentuale "%" aggiungendo il backslash davanti, così: "\%".
Visualizzazione post con etichetta Shell. Mostra tutti i post
Visualizzazione post con etichetta Shell. Mostra tutti i post
lunedì 22 agosto 2016
giovedì 23 luglio 2015
Inserire caratteri unicode da tastiera
Per inserire direttamente il codice unicode di un carattere, gli utenti Windows usano la combinazione di tasti:
ALT + numero sul tastierino numerico.
Per gli utenti Linux la combinazione per inserire caratteri unicode da tastiera è leggermente più articolata:
Ctrl + Maiusc + u
Compare una u, basta scrivere il codice unicode (ad esempio 213b) e dare invio, in questo caso otteniamo il simbolo ℻.
La cosa funziona sicuramente con interfacce basate su GTK, ad esempio Gnome, su altre basate per esempio su KDE non ho verificato.
Sempre per gli utenti Linux, c'è comunque la possibilità di inserire virgolette alte, basse, singole, doppie, la tilde e così via, direttamente tramite queste combinazione di tasti.
ALT + numero sul tastierino numerico.
Per gli utenti Linux la combinazione per inserire caratteri unicode da tastiera è leggermente più articolata:
Ctrl + Maiusc + u
Compare una u, basta scrivere il codice unicode (ad esempio 213b) e dare invio, in questo caso otteniamo il simbolo ℻.
La cosa funziona sicuramente con interfacce basate su GTK, ad esempio Gnome, su altre basate per esempio su KDE non ho verificato.
Sempre per gli utenti Linux, c'è comunque la possibilità di inserire virgolette alte, basse, singole, doppie, la tilde e così via, direttamente tramite queste combinazione di tasti.
Pubblicato da
Unknown
0
commenti
mercoledì 22 luglio 2015
Virgolette e altri caratteri speciali sulle tastiere Linux
Combinazioni di tasti per l'inserimento di virgolette e altri caratteri speciali sulle tastiere Linux:
Virgolette alte doppie
aperte: AltGr + V = “
chiuse: AltGr + B = ”
Virgolette alte semplici
aperte: AltGr + Maiusc + v = ‘
chiuse: AltGr + Maiusc + b = ’
Virgolette basse (caporali o all'italiana)
aperte: AltGr + < = «
chiuse: AltGr + x = »
Virgoletta inversa
AltGr + ' = `
E accentata maiuscola
Bloc Maiusc + è = È
Tilde
AltGr + ì = ~
Parentesi quadre
aperte: AltGr + è = [
chiuse: AltGr + + = ]
Parentesi graffe
aperte: AltGr + 7 = {
chiuse: AltGr + 0 = }
Un'altra possibilità è quella di inserire da tastiera il codice Unicode dei caratteri.
Virgolette alte doppie
aperte: AltGr + V = “
chiuse: AltGr + B = ”
Virgolette alte semplici
aperte: AltGr + Maiusc + v = ‘
chiuse: AltGr + Maiusc + b = ’
aperte: AltGr + < = «
chiuse: AltGr + x = »
Virgoletta inversa
AltGr + ' = `
E accentata maiuscola
Bloc Maiusc + è = È
Tilde
AltGr + ì = ~
Parentesi quadre
aperte: AltGr + è = [
chiuse: AltGr + + = ]
Parentesi graffe
aperte: AltGr + 7 = {
chiuse: AltGr + 0 = }
Pubblicato da
Unknown
2
commenti
mercoledì 8 luglio 2015
CentOS 7 Minimal: attivazione dell'autocompletamento nella shell Bash
Per installare l'autocompletamento nel terminale Bash di una CentOS 7 Minimal:
# yum -y install bash-completion
# yum -y install bash-completion
Pubblicato da
Unknown
0
commenti
domenica 3 luglio 2011
Linux: inserire del testo in un file usando la shell
Dopo aver usato il terminale per creare un file, al suo interno e sempre usando la shell, potete inserire il testo che volete con il comando
dove:
echo è il nome del comando Linux che visualizza nel terminale il testo racchiuso fra apici singoli. Provate a scrivere semplicemente echo 'questa è una prova' e date invio, capirete cosa intendo;
'testo da inserire nel file' mettete fra gli apici singoli il testo da inserire nel vostro file;
>> è il cosiddetto operatore di ridirezione, serve a dirottare l'output del comando echo, normalmente verso il terminale, verso il file di cui segue il nome;
nome_file.txt sostituitelo con il nome del vostro file in cui inserire il testo.
GdS
echo 'testo da inserire nel file' >> nome_file.txt
dove:
echo è il nome del comando Linux che visualizza nel terminale il testo racchiuso fra apici singoli. Provate a scrivere semplicemente echo 'questa è una prova' e date invio, capirete cosa intendo;
'testo da inserire nel file' mettete fra gli apici singoli il testo da inserire nel vostro file;
>> è il cosiddetto operatore di ridirezione, serve a dirottare l'output del comando echo, normalmente verso il terminale, verso il file di cui segue il nome;
nome_file.txt sostituitelo con il nome del vostro file in cui inserire il testo.
GdS
Pubblicato da
Unknown
0
commenti
sabato 2 luglio 2011
Linux: creare un file vuoto usando la shell
Aprite il terminale della vostra distribuzione e scrivete
dove:
touch è il nome del comando Linux che crea il file,
nome_file sostituitelo con il nome che dovrà avere il vostro file,
.txt sostituitelo con il nome dell'eventuale estensione che dovrà avere il vostro file; potete anche ometterlo se non serve.
GdS
touch nome_file.txt
dove:
touch è il nome del comando Linux che crea il file,
nome_file sostituitelo con il nome che dovrà avere il vostro file,
.txt sostituitelo con il nome dell'eventuale estensione che dovrà avere il vostro file; potete anche ometterlo se non serve.
GdS
Pubblicato da
Unknown
0
commenti
sabato 17 novembre 2007
Linux: comandi info, apropos, whatis per ulteriori informazione sui comandi
Sempre per non perderci nella foresta dei comandi Linux, dopo il post scorso sull'uso di man, l'interfaccia da shell alla documentazione presente sul vostro sistema Linux, in questo post conclusivo sull'argomento vi mostro altri 3 comandi per accedere ad ulteriore documentazione:
Potrete saltare da una pagina all'altra premendo invio quando il cursore è su un termine che contiene un rimando ad un'altra pagina. Premendo u si torna al livello precedente, con n si passa alla pagina seguente, con p alla precedente, i torna all'indice, / permette di fare ricerche, ? mostra i comandi disponibili.
Passiamo ora al comando
Scopriamo così che ls si trova nella sezione 1 dei manuali e dalla descrizione del comando capiamo cosa fa, la stessa descrizione, ripeto, che il comando man ls presenta nella prima sezione NAME. In realtà
Tenetelo presente: quando chiedete a
Ultimo comando di cui ci occupiamo è
Bene, e con questo abbiamo terminato il veloce sguardo agli strumenti grazie alla quale avere rapidamente informazioni sui comandi Linux. Naturalmente rimane il web come ulteriore fonte d'informazione, ma lì non credo di dovervi dire qualcosa: voglio solo segnalarvi due ottime fonti di informazioni che trovate nella barra di navigazione sinistra, alla sezione "Risorse sul Web": si tratta di "Appunti di informatica libera" e di "Truelite"; entrambi in italiano, chiare, complete, e molto molto utili per approfondire quanto andremo a vedere nei prossimi post sull'argomento. A presto. :)
@:\>
info, whatis e apropos.Info in qualche modo è analogo a man: per usarlo basterà dare il comando info nomecomando e anch'esso permette di accedere alla documentazione dei comandi, ma le due documentazioni non sono equivalenti: alcune cose infatti che trovate nei file di man non le trovate in quelli di info e viceversa. Anche il sistema di consultazione è diverso: quello di info è un pò più ostico trattandosi di pagine ipertestuali.Potrete saltare da una pagina all'altra premendo invio quando il cursore è su un termine che contiene un rimando ad un'altra pagina. Premendo u si torna al livello precedente, con n si passa alla pagina seguente, con p alla precedente, i torna all'indice, / permette di fare ricerche, ? mostra i comandi disponibili.
Passiamo ora al comando
whatis. Nel post precedente vi avevo spiegato come i manuali sono raccolti in sezioni: whatis nomecomando restituisce il numero della sezione del manuale in cui ha trovato la stringa "nomecomando" ed una sua descrizione, quella che potete vedere nella sezione NAME quando ad esempio avete dato il comando man ls, proprio all'inizio della schermata. Esempio:$ whatis ls
ls (1) - list directory contentsScopriamo così che ls si trova nella sezione 1 dei manuali e dalla descrizione del comando capiamo cosa fa, la stessa descrizione, ripeto, che il comando man ls presenta nella prima sezione NAME. In realtà
whatis così non è poi di grandissima utilità, a meno di trovarci in questa situazione:$ whatis passwd
passwd (1) - change user password
passwd (1ssl) - compute password hashes
passwd (5) - the password fileWhatis ci restituisce tutte le occorrenze di passwd con tanto di indicazione della sezione in cui si trova e ovviamente la breve descrizione del comando. Per come è congegnato man, quando diamo il comando man passwd ci viene mostrata solo la prima occorrenza, per visualizzare le altre 2 occorre indicarle esplicitamente, per esempio:man 5 passwdTenetelo presente: quando chiedete a
man un certo comando ma vi compare altro, controllate con whatis la presenza di altre voci che siano maggiormente corrispondenti a quanto cercate.Ultimo comando di cui ci occupiamo è
apropos "nome comando": cerca la stringa corrispondente a "nome comando" nella sezione DESCRIPTION delle pagine visualizzate da man, notare l'uso degli apici per parole composte.Bene, e con questo abbiamo terminato il veloce sguardo agli strumenti grazie alla quale avere rapidamente informazioni sui comandi Linux. Naturalmente rimane il web come ulteriore fonte d'informazione, ma lì non credo di dovervi dire qualcosa: voglio solo segnalarvi due ottime fonti di informazioni che trovate nella barra di navigazione sinistra, alla sezione "Risorse sul Web": si tratta di "Appunti di informatica libera" e di "Truelite"; entrambi in italiano, chiare, complete, e molto molto utili per approfondire quanto andremo a vedere nei prossimi post sull'argomento. A presto. :)
@:\>
Pubblicato da
Unknown
2
commenti
giovedì 15 novembre 2007
Linux: man, informazioni sui comandi
Abbiamo già visto nel post precedente, come la shell non sia altro che un'interfaccia di tipo testo con cui dare comandi a Linux. Non clicchiamo su qualcosa, niente tasto destro o sinistro: solo testo, puro testo, nient'altro che testo. Ed una vera foresta di comandi mnemonici da mandar giù, con ancora più opzioni da poter usare per ognuno di essi, in cui soprattutto chi proviene da Windows o più in generale gli amanti dell'interfaccia grafica potrebbe/protrebbero facilmente perdersi.
Prima di andare perciò dispersi in questa selva oscura, voglio condividere con voi altre informazioni di base per non perderci mai, o quanto meno ritrovarci nel caso "che la diritta via era smarrita". Linux infatti è molto ben documentato, e per ogni comando c'è la possibilità di averne immediatamente una descrizione e la lista della sue possibili opzione tramite un apposito comando: man.
Man è un'interfaccia ai manuali disponibili sul vostro sistema consultabili da shell. Prende in input i file contenenti questi manuali scritti in un linguaggio di formattazione chiamato Troff (come concetto analogo all'HTML nel senso che all'interno dello testo stesso vi sono anche le istruzioni di formattazione), e produce qualcosa di simile a quanto riportato più sotto.
Facciamo un esempio concreto: tramite il comando
(il $ rappresenta il prompt, anch'esso spiegato nel post precedente), otterrete quanto segue:
Come potete vedere man formatta a video una serie di informazioni sul comando ls:
- per comodità infatti il manuale è stato diviso in sezione, una per ogni tipologia di comandi, ls è nella prima (1), la sezione dei comandi utente (user commands);
- NAME contiene il nome del comando così come va scritto nella shell ed una sua breve descrizione;
- SINOPSYS indica come va usato il comando in tutti i possibili casi, comprese le eventuali opzioni e gli argomenti;
- DESCRIPTION fornisce una descrizione più dettagliata del comando;
- segue la lista dei possibili argomenti del comando con la loro descrizione.
Per muovervi all'interno di documenti molto lunghi premete i tasti "page up" e "page down" ("Pag con freccia all'insù" e "Pag con freccia all'ingiù" sulla vostra tastiera) e potrete andare su e giù nel testo visualizzandone la parte che v'interessa.
Cercate un termine all'interno del testo? Premete il tasto "/" (sopra il 7 nella tastiera italiana) e scrivete la stringa cercata, poi date invio. Man vi evidenzierà tutto le occorrenze trovate.
Ma non finisce qua: man fa altre mille cosette simpatiche. Quali? Beh, chi meglio di man stesso può dirvelo. Date il comando
Si esatto, come avrete già immaginato, abbiamo chiesto a man di visualizzare il suo stesso manuale. Consultatelo usando una Ubuntu, trovete in italiano tutta una serie di utili descrizioni sul modo in cui sono organizzati i manuali, e capirete meglio l'output di man quando avete chiesto informazioni sul comando ls.
Ultima cosa: quando avete terminato la consultazione e volete uscire dalla pagina di manuale, premete il tasto "q", sta per quit.
@:\>
Prima di andare perciò dispersi in questa selva oscura, voglio condividere con voi altre informazioni di base per non perderci mai, o quanto meno ritrovarci nel caso "che la diritta via era smarrita". Linux infatti è molto ben documentato, e per ogni comando c'è la possibilità di averne immediatamente una descrizione e la lista della sue possibili opzione tramite un apposito comando: man.
Man è un'interfaccia ai manuali disponibili sul vostro sistema consultabili da shell. Prende in input i file contenenti questi manuali scritti in un linguaggio di formattazione chiamato Troff (come concetto analogo all'HTML nel senso che all'interno dello testo stesso vi sono anche le istruzioni di formattazione), e produce qualcosa di simile a quanto riportato più sotto.
Facciamo un esempio concreto: tramite il comando
man ls visualizziamo le pagine del manuale del comando ls usato per avere la lista dei file contenuti in una directory. Aprite la shell (come fare lo trovate nel post precedente), e date il comando$ man ls(il $ rappresenta il prompt, anch'esso spiegato nel post precedente), otterrete quanto segue:
LS(1) User Commands LS(1)
NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort.
Mandatory arguments to long options are mandatory for short options too.
-a, --all
do not ignore entries starting with .
-A, --almost-all
do not list implied . and ..
--author
with -l, print the author of each file
-b, --escape
print octal escapes for nongraphic characters
--block-size=SIZE
use SIZE-byte blocks
-B, --ignore-backups
do not list implied entries ending with ~
-c with -lt: sort by, and show, ctime (time of last modification of file status information) with -l: show ctime and sort by name otherwise: sort
by ctime
-C list entries by columns
--color[=WHEN]
control whether color is used to distinguish file types. WHEN may be ‘never’, ‘always’, or ‘auto’
-d, --directory
list directory entries instead of contents, and do not dereference symbolic links
Manual page ls(1) line 1/208 18%Come potete vedere man formatta a video una serie di informazioni sul comando ls:
- per comodità infatti il manuale è stato diviso in sezione, una per ogni tipologia di comandi, ls è nella prima (1), la sezione dei comandi utente (user commands);
- NAME contiene il nome del comando così come va scritto nella shell ed una sua breve descrizione;
- SINOPSYS indica come va usato il comando in tutti i possibili casi, comprese le eventuali opzioni e gli argomenti;
- DESCRIPTION fornisce una descrizione più dettagliata del comando;
- segue la lista dei possibili argomenti del comando con la loro descrizione.
Per muovervi all'interno di documenti molto lunghi premete i tasti "page up" e "page down" ("Pag con freccia all'insù" e "Pag con freccia all'ingiù" sulla vostra tastiera) e potrete andare su e giù nel testo visualizzandone la parte che v'interessa.
Cercate un termine all'interno del testo? Premete il tasto "/" (sopra il 7 nella tastiera italiana) e scrivete la stringa cercata, poi date invio. Man vi evidenzierà tutto le occorrenze trovate.
Ma non finisce qua: man fa altre mille cosette simpatiche. Quali? Beh, chi meglio di man stesso può dirvelo. Date il comando
$ man manSi esatto, come avrete già immaginato, abbiamo chiesto a man di visualizzare il suo stesso manuale. Consultatelo usando una Ubuntu, trovete in italiano tutta una serie di utili descrizioni sul modo in cui sono organizzati i manuali, e capirete meglio l'output di man quando avete chiesto informazioni sul comando ls.
Ultima cosa: quando avete terminato la consultazione e volete uscire dalla pagina di manuale, premete il tasto "q", sta per quit.
@:\>
Pubblicato da
Unknown
0
commenti
mercoledì 14 novembre 2007
Linux: la shell, la vostra centrale di comando
Con il post "Linux: avvio e funzionamento del kernel" abbiamo concluso una prima serie di post intesi a comprendere le basi dell'architettura di un sistema Linux. I prossimi sono post di passaggio prima di addentrarci nella giungla dei comandi Linux: una vera foresta in cui sopratutto chi proviene da Windows o più in generale gli amanti dell'interfaccia grafica, potrebbero facilmente perdersi. E in questo non siamo per niente aiutati dal front-end, dall'interfaccia usata per dare i comandi: la shell.
La shell non è altro che un'interfaccia di tipo testo fra noi e Linux. Come tutto il resto anch'essa è un programma, ed infatti esiste più di una shell. Alcune sono caratterizzate da grande leggerezza e un fabbisogno limitato di risorse, altre da comandi molto potenti, altre ancora dall'aderenza agli standard Posix. Quella di default sulla maggioranza delle distribuzione, tra cui anche le nostre due di riferimento, Mandriva e Ubuntu, è la bash (Bourne Again SHell).
Il nome ed il modo di avviare la bash cambia a seconda che stiate usando l'interfaccia grafica Gnome (quella di Ubuntu per esempio) o KDE (di default in Mandriva): nella prima si chiama Terminale e potete avviarla come in fig. 1,

fig. 1
nella seconda si chiama Konsole (è consuetudine aggiugere una k iniziale nelle applicazioni KDE) e la potete avviare come in fig. 2.

fig. 2
Una volta avviata, la shell mostrerà un prompt, un testo all'inizio di ogni riga, che contiene una serie di informazioni utili; vediamo quelle della bash in Ubuntu (fig. 3):
- la parte prima della "@" è il vostro nome utente (o userid);
- la parte successiva alla "@" che termina dove ci sono i ":" è il nome con cui viene vista la vostra macchina all'interno di una rete;
- il simbolo "~" (tilde) per convenzione in Linux indica la vostra directory home. Dato che la home di un utente ha come nome quello dell'utente stesso, in fig. 3 allora ci troviamo nella directory
- il simbolo "$" (dollaro) finale sta ad indicare che in questo momento siete un utente normale, se fosse il simbolo "#" invece siete l'amministratore; ricordatelo quando siete in dubbio se siete in modalità amministrativa o utente normale, nel primo caso dovete essere molto più attenti per la portata maggiore dei danni che potreste fare.

fig. 3
Due sono le funzionalità della bash che voglio mostrarvi, sono semplici ma di grande utilità; riguardano entrambi lo storico dei comandi precedentemente dati:
1) premendo il tasto "freccia su" della vostra tastiera potrete navigare all'indietro ed uno alla volta, tutto lo storico dei comandi già dati nella shell. Fate una prova, date i comandi:
Vi ricordo che il simbolo dollaro "$" del prompt sta ad indicare che siete in modalità utente normale. Ora premete "freccia su" e uno alla volta lì vedrete ricomparire tutti in ordine inverso, dal comando più recente a quello più datato.
2) dando il comando
Ecco, con solo questi due piccoli aiuti da parte della shell, il vostro lavoro diventerà molto più veloce e leggero, niente più riscrittura degli stessi noiosi comandi, soprattutto quando sono composti dal concatenamento di tanti singoli comandi che prossimamente vedremo.
@:\>
La shell non è altro che un'interfaccia di tipo testo fra noi e Linux. Come tutto il resto anch'essa è un programma, ed infatti esiste più di una shell. Alcune sono caratterizzate da grande leggerezza e un fabbisogno limitato di risorse, altre da comandi molto potenti, altre ancora dall'aderenza agli standard Posix. Quella di default sulla maggioranza delle distribuzione, tra cui anche le nostre due di riferimento, Mandriva e Ubuntu, è la bash (Bourne Again SHell).
Il nome ed il modo di avviare la bash cambia a seconda che stiate usando l'interfaccia grafica Gnome (quella di Ubuntu per esempio) o KDE (di default in Mandriva): nella prima si chiama Terminale e potete avviarla come in fig. 1,
fig. 1
nella seconda si chiama Konsole (è consuetudine aggiugere una k iniziale nelle applicazioni KDE) e la potete avviare come in fig. 2.
fig. 2
Una volta avviata, la shell mostrerà un prompt, un testo all'inizio di ogni riga, che contiene una serie di informazioni utili; vediamo quelle della bash in Ubuntu (fig. 3):
- la parte prima della "@" è il vostro nome utente (o userid);
- la parte successiva alla "@" che termina dove ci sono i ":" è il nome con cui viene vista la vostra macchina all'interno di una rete;
- il simbolo "~" (tilde) per convenzione in Linux indica la vostra directory home. Dato che la home di un utente ha come nome quello dell'utente stesso, in fig. 3 allora ci troviamo nella directory
/home/occhipervinca;- il simbolo "$" (dollaro) finale sta ad indicare che in questo momento siete un utente normale, se fosse il simbolo "#" invece siete l'amministratore; ricordatelo quando siete in dubbio se siete in modalità amministrativa o utente normale, nel primo caso dovete essere molto più attenti per la portata maggiore dei danni che potreste fare.
fig. 3
Due sono le funzionalità della bash che voglio mostrarvi, sono semplici ma di grande utilità; riguardano entrambi lo storico dei comandi precedentemente dati:
1) premendo il tasto "freccia su" della vostra tastiera potrete navigare all'indietro ed uno alla volta, tutto lo storico dei comandi già dati nella shell. Fate una prova, date i comandi:
$ ls che vi presenta la lista dei file della directory in cui vi trovate,$ cd / per portarvi nella radice del vostro filesystem (è pressappoco come essere in C: in Windows),$ ls -l, che mostra molte più informazioni del solo ls.Vi ricordo che il simbolo dollaro "$" del prompt sta ad indicare che siete in modalità utente normale. Ora premete "freccia su" e uno alla volta lì vedrete ricomparire tutti in ordine inverso, dal comando più recente a quello più datato.
2) dando il comando
hystory vedrete riportata tutta la lista dei comandi dati preceduti da un numero. Se volete eseguire un certo comando presente nella lista, è sufficiente dare !numero per vederlo eseguito.Ecco, con solo questi due piccoli aiuti da parte della shell, il vostro lavoro diventerà molto più veloce e leggero, niente più riscrittura degli stessi noiosi comandi, soprattutto quando sono composti dal concatenamento di tanti singoli comandi che prossimamente vedremo.
@:\>
Pubblicato da
Unknown
0
commenti
Iscriviti a:
Post (Atom)