Archive for the ‘shell’ Category
Ecco un semplice metodo per cercare del testo in una serie di files, valido per tutte le distro linux:
grep "mio testo da cercare" /home/myhome/*.txt
al comando grep si possono anche aggiungere altre opzioni per:
- Effettuare una ricerca ricorsiva nelle sub directories:
grep -r "mio testo" /home/myhome
- Stampare solo il nome del file dove abbiamo la notra occorrenza:
grep -H -r “mio test” /home/myhome
Published in:
linux,
shell,
tips
Posted by:
admin (mar 21)
La notazione per le abbreviazioni è la seguente. Le sequenze identificate con il simbolo (^) sono introdotte usando il tasto Control (Ctrl), oppure premendo il tasto Esc due volte. Le sequenze identificate col simbolo Meta (M) possono essere inserite usato alternativamente il tasto Esc, Alt o Meta, a seconda della configurazione della tastiera. Inoltre, premendo Esc due volte e digitando i numeri da 000 a 255 si possono inserire i caratteri con il codice ASCII corrispondente. Le seguenti abbreviazioni sono disponibili nella finestra principale dell'editor. Le sequenze alternative sono mostrate tra parentesi:
^G (F1) Mostra questo messaggio di aiuto
^X (F2) Chiude il file corrente / Esce da nano
^O (F3) Salva il file corrente su disco
^J (F4) Giustifica il paragrafo corrente
^R (F5) Inserisce un altro file nel corrente
^W (F6) Cerca una stringa o un'espressione regolare
^Y (F7) Va alla schermata precedente
^V (F8) Va alla schermata successiva
^K (F9) Taglia la riga corrente e la memorizza nel cutbuffer
^U (F10) Incolla dal cutbuffer nella riga corrente
^C (F11) Mostra la posizione del cursore
^T (F12) Esegue il correttore ortografico, se disponibile
M-\ (M-|) Va alla prima riga del file
M-/ (M-?) Va all'ultima riga del file
^_ (F13) (M-G) Va a un numero di riga e di colonna specifico
^\ (F14) (M-R) Sostituisce una stringa o un'espressione regolare
^^ (F15) (M-A) Marca testo alla posizione del cursore
M-W (F16) Ripete l'ultima ricerca
M-^ (M-6) Copia la riga corrente e la memorizza nel cutbuffer
M-} Applica indentazione alla riga corrente
M-{ Toglie indentazione dalla riga corrente
^F Avanza di un carattere
^B Arretra di un carattere
^Space Avanza di una parola
M-Space Arretra di una parola
^P Va alla riga precedente
^N Va alla riga successiva
^A Va all'inizio della riga corrente
^E Va alla fine della riga corrente
M-( (M-9) Va all'inizio del paragrafo; poi al paragrafo precedente
M-) (M-0) Va alla fine del paragrafo; poi al paragrafo successivo
M-] Va alla parentesi corrispondente
M– (M-_) Scorre in alto di una riga senza muovere il cursore
M-+ (M-=) Scorre in basso di una riga senza muovere il cursore
M-< (M-,) Va al buffer precedente
M-> (M-.) Va al buffer successivo
M-V Inserisce un carattere letteralmente
^I Inserisce una tabulazione alla posizione del cursore
^M Inserisce un ritorno a capo alla posizione del cursore
^D Elimina il carattere sotto il cursore
^H Elimina il carattere a sinistra del cursore
M-T Taglia dal cursore alla fine del file
M-J Giustifica l'intero file
M-D Conta il numero di parole, righe e caratteri
^L Aggiorna la schermata corrente
^Z Sospende l'editor (se la sospensione è abilitata)
(M-X) Barra dei comandi abilita/disabilita
(M-C) Mostra sempre la posizione del cursore abilita/disabilita
(M-O) Usa una riga in più per le modifiche abilita/disabilita
(M-S) Scorrimento continuo abilita/disabilita
(M-P) Mostra spazi bianchi abilita/disabilita
(M-Y) Sintassi colorata abilita/disabilita
(M-H) Tasto Inizio intelligente abilita/disabilita
(M-I) Indentazione automatica abilita/disabilita
(M-K) Taglia fino a fine riga abilita/disabilita
(M-L) A capo automatico abilita/disabilita
(M-Q) Conversione delle tabulazioni in spazi abilita/disabilita
(M-B) File di backup abilita/disabilita
(M-F) File multipli abilita/disabilita
(M-M) Supporto per il mouse abilita/disabilita
(M-N) Nessuna conversione dai formati DOS/Mac abilita/disabilita
(M-Z) Sospensione abilita/disabilita
(M-$) A capo morbido abilita/disabilita
Per evitare la disconnessione precoce da una sessione ssh per raggiunto limite temporale di inattività si può agire nei seguenti modi:
1) A livello di cliente, modificando il file /etc/ssh/ssh_config , aggiungendo o modificando la voce ServerAliveInterval, ad esempio:
ServerAliveInterval 15
Imposta il tempo di mantenimento della sessione per inattività a 15 minuti.
2) A livello di server, modificando il file /etc/ssh/sshd_config, aggiungendo o modificando le voci ClientAliveInterval e ClientAliveCountMax, ad esempio:
ClientAliveInterval 15
ClientAliveCountMax 15
Le posizioni dei files di configs potrebbe variare da una distribuzione linux ad un altra, ma normalmente quelli indicati sono i percorsi delle principali, come Debian, Ubuntu, Fedora, RH.
Published in:
linux,
shell,
tips
Posted by:
admin (set 21)
Per avere un elenco dei pacchetti software installati sulla vostra Linux Box (Ubuntu/Debian):
dpkg -l|awk '/^ii/{ print $2 }'|grep -v -e ^lib -e -dev -e $(uname -r) > lista.txt
Published in:
linux,
shell,
tips
Posted by:
admin (lug 26)
Ecco un esempio di come riprendere a scaricare un file parzialmente scaricato via scp o rsync. Visto che scp non supporta il resume, se siè iniziato a scaricare il file con questo comando, dobbiamo comunque sostituirlo con un alternativa basata su rsync:
rsync –partial –progress –rsh="ssh -p 1022" root@remotehost:/~/filename filename
Nell'esempio riportato sopra è anche indicato come comporre il comando se si sta usando una porta diversa dalla tradizionale 22 per il protocollo SSH.
Published in:
linux,
shell,
tips
Posted by:
admin (lug 22)
Provate ad usare il validissimo Plowshare (un programma a linea di comando) ingrado di eseguire l'upload e il download per alcuni dei più popolari siti web di file-sharing. Funziona sui sistemi Linux e Unix-like, supporta: Megaupload, Rapidshare, 2Shared, 4Shared, ZShare, Badongo, DepositFiles and Mediafire. In pratica è un sostitutivo di wget per questi siti.
Per installare Plowshare in Ubuntu Linux
1. Se non soddisfatte, ottemperiamo alle dipendenze:
sudo apt-get install curl recode imagemagick tesseract-ocr-eng spidermonkey-bin aview
2. Download Plowshare, estraete il contenuto ed installate. Esiste anche la versione già pacchettizata .deb, se usate quella versione vi basta fare doppio click sul pacchetto e confermare l'installazione, viceversa:
tar xvzf plowshare-0.X
3. Now let's set up Plowshare:
cd plowshare-0.X
sudo bash setup.sh install
I comandi di Plowshare
Download di un file da rapidshare:
plowdown http://www.rapidshare.com/files/86545320/Tux-Trainer_25-01-2008.rar
Download di u na lista di files (uno per linea):
plowdown file_with_links.txt
Download di un file da megaupload con free membership ID:
plowdown -a myuser:mypassword http://www.megaupload.com/?d=132348234
Download di un file protetto da password da megaupload:
plowdown -p somepassword http://www.megaupload.com/?d=ieo1g52v
Get only the file URL without actually downloading it. Very handy if you want to use another web downloader:
plowdown –link-only http://www.2shared.com/file/4446939/c9fd70d6/Test.html | xargs -rt wget
Per utenti avanzati: se hai trovato una pagina con diversi links a files ospitati su megaupload vuoi farne il download, per vedere i primi 10 links, devi usare il seguente comando:
curl http://some-website.com/page.html | \
grep -o "http://www.megaupload.com/[^\"< ]*" | uniq | head -n10 | plowdown -
Per filtrare i links funzionanti in un file di testo:
plowdown -c file_with_links.txt > file_with_active_links.txt
Upload di un file su megaupload con un free membershipID:
plowup -a myuser:mypassword -d "My description" /path/myfile.txt megaupload
Upload di un file su megaupload con un Premium ID e multifetch upload:
plowup -a myuser:mypassword -d "My description" –multifetch http://www.somewherefarbeyond.com/somefile megaupload
Upload di un file su rapidshare anonomamente, cambiando il nome del file dopo l'upload:
plowup /path/myfile.txt rapidshare:anothername.txt
Con screen si può condividere la sonsole tra più utenti connessi in locale o via ssh. Per farlo basta seguire i seguenti passi, le istruzioni sono tipiche per un sistema debian, ma valgono similarmente per altre distribuzioni.
1. Installare screen
sudo apt-get install screen
2. Dal computer host viene eseguito screen col parametro per avviare una sessione screen -S SessionName. -S permette di specificare un nome per la sessione, questo permette di gestire molteplici sessioni e molti user contemporaneamente in maniera facile.
screen -S screen-test
4. L'utente remoto (guest) usa SSH per connettersi al computer remoto (remotehost)
ssh guest@remotehost
5. Il computer host (remotehost) acconsente la connessione multi utente nella sessione screen digitando CTRL-A: multiuser on (tutti i 'comandi screen' si aprono con la sequenza di escape CTRL-A).
CTRL-A:multiuser on
6. Quindi, l'host (remotehost) deve concedere l'autorizzazione per l'utente remoto (guest) per permettergli di accedere alla sessione di screen con il commadn CTRL-A: acladd nome_utente dove nome_utente è login dell'utente remoto.
CTRL-A:acladd guest
7. L'utente remoto può connettersi alla sessione dell'host. La sintassi per connettersi alla sessione di screen di un altro utente è host_username screen-x / sessionname.
screen -x username/screen-test
Published in:
HowTo,
linux,
shell,
tips
Posted by:
admin (apr 19)
Nella shell si può specificare il formato della data nel seguente modo:
date +FORMAT
Ad esempio digitando:
$ date +"%m-%d-%y"
Si ottiene:
04-17-10
Se si vuole l'annoa 4 cifre:
$ date +"%m-%d-%y"
Si ottiene:
04-17-2010
Per ottenre l'ora corrente basta digitare:
$ date +"%T"
Si ottiene:
19:55:04
Per ottenre l'ora basata sulle 12 ore:
$ date +"%r"
Si ottiene:
07:56:05 PM
Per visualizzare l'ora nel formato HH:MM:
$ date +"%H-%M"
Si ottiene:
07:56
Lista completa delle opzioni per formattare il domando date:
- %%
- a literal %
- %a
- locale's abbreviated weekday name (e.g., Sun)
- %A
-
locale's full weekday name (e.g., Sunday)
- %b
- locale's abbreviated month name (e.g., Jan)
- %B
- locale's full month name (e.g., January)
- %c
- locale's date and time (e.g., Thu Mar 3 23:05:25 2005)
- %C
- century; like %Y, except omit last two digits (e.g., 21)
- %d
- day of month (e.g, 01)
- %D
-
date; same as %m/%d/%y
- %e
- day of month, space padded; same as %_d
- %F
- full date; same as %Y-%m-%d
- %g
- last two digits of year of ISO week number (see %G)
- %G
- year of ISO week number (see %V); normally useful only with %V
- %h
- same as %b
- %H
-
hour (00..23)
- %I
- hour (01..12)
- %j
- day of year (001..366)
- %k
- hour ( 0..23)
- %l
- hour ( 1..12)
- %m
- month (01..12)
- %M
-
minute (00..59)
- %n
- a newline
- %N
- nanoseconds (000000000..999999999)
- %p
- locale's equivalent of either AM or PM; blank if not known
- %P
- like %p, but lower case
- %r
- locale's 12-hour clock time (e.g., 11:11:04 PM)
- %R
-
24-hour hour and minute; same as %H:%M
- %s
- seconds since 1970-01-01 00:00:00 UTC
- %S
- second (00..60)
- %t
- a tab
- %T
- time; same as %H:%M:%S
- %u
- day of week (1..7); 1 is Monday
- %U
-
week number of year, with Sunday as first day of week (00..53)
- %V
- ISO week number, with Monday as first day of week (01..53)
- %w
- day of week (0..6); 0 is Sunday
- %W
- week number of year, with Monday as first day of week (00..53)
- %x
- locale's date representation (e.g., 12/31/99)
- %X
- locale's time representation (e.g., 23:13:48)
- %y
-
last two digits of year (00..99)
- %Y
- year
- %z
- +hhmm numeric timezone (e.g., -0400)
- %:z
- +hh:mm numeric timezone (e.g., -04:00)
- %::z
- +hh:mm:ss numeric time zone (e.g., -04:00:00)
- %:::z
- numeric time zone with : to necessary precision (e.g., -04, +05:30)
- %Z
- alphabetic time zone abbreviation (e.g., EDT)
Published in:
linux,
shell,
tips
Posted by:
admin (apr 19)
Per visualizzare le condivisione attive consiglio di fare prima questo comando:
smbclient -L <windows-box> -U <username>
Dopo possiamo procedere a mappare la condivisionewindows nella nostra linux box nel segunete modo:
- Creare la directory per il mountpoint: mkdir /mnt/<name-of-mount-point>
- Montiamo il windows share share:
mount -t cifs -o username=<username>,password=<password> //<win-box>/<share> /mnt/<name-of-mountpoint>
Note: The syntax -username=<username>,password=<password> saves the password.
- Infine se volete potete creare il link simbolico al drive: ln -s /mnt/<name-of-mount-point> /<path-of-symlink>
Published in:
linux,
samba,
shell,
tips
Posted by:
admin (feb 22)
Per aggiungere la sintassi colorata a nano si deve in prima istanza creare il file di configurazione .nanorc nella propria home page, in seconda istanza reperire da questo indirizzo: http://code.google.com/p/nanosyntax/source/browse/#svn/trunk/syntax-nanorc i files .nanorc da include nella configurazione per ottenere l'effetto desiderato.
Esempio di testo da aggiungere al .nanorc:
include "/usr/share/nano/php.nanorc"
include "/usr/share/nano/sh.nanorc"
include "/usr/share/nano/java.nanorc"
include "/usr/share/nano/patch.nanorc"
include "/usr/share/nano/python.nanorc"
include "/usr/share/nano/html.nanorc"
include "/usr/share/nano/perl.nanorc"
include "/usr/share/nano/ruby.nanorc"
include "/usr/share/nano/js.nanorc"
Published in:
linux,
shell,
tips
Posted by:
admin (ott 19)
Ctrl + A Va all'inizio della riga che si sta digitando.
Ctrl + E Va alla fine della riga che si sta digitando.
Ctrl + L Pulisce lo schermo.
Ctrl + U Pulisce lo schermo prima del cursore. Se si è alla fine della riga, pulisce l'intera riga.
Ctrl + R Vi permette di cercare attraverso i comandi usati in precedenza.
Ctrl + C Termina qualsiasi cosa stiate facendo.
Ctrl + D Uscita dalla attuale shell.
Ctrl + Z Avvia alla sospensione in background qualsiasi cosa stiate facendo.
Ctrl + W Cancella la parola che sta prima del cursore.
Ctrl + K Pulisce la linea dopo il cursore.
Ctrl + T Inverte gli ultimi due caratteri prima del cursore.
Esc + T Inverte le ultime due parole prima del cursore.
Alt + F Muove il cursore in avanti di una parola nella riga corrente.
Alt + B Muove il cursore indietro di una parola nella riga corrente.
Tab Completa automaticamente i nomi di files e cartelle.
Ctrl + Y Incolla (come nel copia e incolla) tutto il testo davanti al cursore.
Nota : Alcuni di questi comandi non funzionano se l'accesso alla shell è via telnet, sessione SSH o se la tastiera è configuratain maniera particolare
Published in:
linux,
shell,
tips
Posted by:
admin (apr 20)
Quando installiamo spamassassin sul nostro mail server abbiamo già installato uno script utilizzabile per scaricare delle regole per migliorare la cattura delle email spam che giungono sul nostro server.
Lo script si chiama sa-update . Sotto riportiamo un semplice entry da inserire nel crontab della vostra linux box per richiamare tutti i giorni alle ore 7:00 lo script e per mantenere up to date le rules del vostro spamassassin.
0 7 * * * /usr/bin/sa-update -D –updatedir /etc/mail/spamassassin/
Ricordatevi di riavviare anche il servizio di spamassassin dopo aver effettuato l'aggiornamento col comando:
/etc/init.d/spamassassin restart
oppure
/etc/init.d/spamd restart
N.B.: Comandi e locazioni possono variare da distro a distro, ma per il sysadmin non dovrebbe essere difficile trovare la corretta posizione. In caso di difficoltà contattateci o lasciate un commento.
Published in:
linux,
shell,
spam,
tips