Krusaf's Blog

Aller au contenu | Aller au menu | Aller à la recherche

vendredi, mars 16 2007

Comment détecter que le shell a été sourcé

Par sourcer j'entends:

. script.sh

ou

source script.sh

Comme ça :

if [ "$0" != "-bash" ]
then
        echo "Please execute the program like that : . init.sh or source init.sh"
        exit 1
fi

samedi, mars 10 2007

Copier une chaine de caractère dans le clipboard

Il faut installer :

sudo apt-get install xclip

Taper :

 echo "ceci est un test" | xclip

et à présent taper en console shift+insert

mercredi, février 7 2007

Le saviez-vous ?

Quand je fais un script shell sous linux/unix, j'avais pour habitude lors d'appel de programme de les appeler avec le chemin complet.

Exemple : /bin/rm -f ${MONFICHIER}"

Pourquoi ? Pour éviter qu'un alias interfère avec l'appel du programme souhaité.

Il y a beaucoup plus simple : Mettez simplement \ devant la commande :)

Pour preuve :

krusaf@hades:~/tmp$ ll
total 0
krusaf@hades:~/tmp$ touch popom
krusaf@hades:~/tmp$ alias "rm=echo"
krusaf@hades:~/tmp$ rm popom 
popom
krusaf@hades:~/tmp$ ll
total 0
-rw-r--r-- 1 krusaf krusaf 0 2007-02-04 18:23 popom
krusaf@hades:~/tmp$ \rm popom
krusaf@hades:~/tmp$ ll
total 0
krusaf@hades:~/tmp$ 

jeudi, janvier 11 2007

Bash : source

J'ai découvert par hasard en regardant un script debian (je sais plus lequel :s)

zeus:~# cat test.sh
function lol ()
{
  echo "koukou $var"
}
zeus:~# . test.sh
zeus:~# lol
koukou
zeus:~#

Jusqu'ici, rien de spécial.

Mais connaissiez-vous source :

zeus:~# cat test.sh
function lol ()
{
  echo "koukou $var"
}
zeus:~# lol
-bash: lol: command not found
zeus:~# source test.sh
zeus:~# lol
koukou
zeus:~#

vendredi, janvier 5 2007

mail avec pièce jointe en ligne de commande

Devant envoyé pas mal de photo ces temps-ci (Noêl ...), je me suis mis à chercher une solution simple pour envoyer un mail avec pièce jointe en ligne de commande.

Lire la suite...

jeudi, janvier 4 2007

astuce vim

Même si j'utilise des éditeurs graphiques comme geany ou bien scite. J'utilise le plus souvent vi en mode console.

Pour ne pas engendrer de conflits/soucis de visualisation de mes fichiers dans différents éditeurs : j'utilise une indentation des 4 espaces, sans tabulation. Ceci permet d'éviter les problèmes avec les fichiers diff, les patches, l'historique CVS et les annotations.

Lire la suite...

mercredi, octobre 18 2006

Compression

- Gzip (archive.gz)

Pour décompresser : "$ gunzip fichier.gz"
Pour compresser : "$ gzip fichier"


- Bzip2 (archive.bz2)

Pour décompresser : "$ bunzip2 fichier.bz2"
Pour compresser : "$ bzip2 fichier"


- Zip (archive.zip)

Pour décompresser : "$ unzip fichier.zip"
Pour compresser : "$ zip -r foo.zip foo"


- Rar (archive.rar)

Pour décompresser : "$ unrar -x fichier.rar" ou "$ rar e fichier.rar"

- Cab

Pour décompresser: "$ cabextract fichier.cab"

- Ace (archive.ace)

Pour décompresser : "$ unace x -y fichier.ace"


- Arj (archive.arj)

Pour compresser : "$ arj a test.arj fichiers"
Pour décompresser : "$ arj x -y fichier.arj"


- Tar (archive.tar)

Pour décompresser : "$ tar xvf fichier.tar"
Pour compresser : "$ tar -cvf fichier.tar fichiers/répertoires"


- Tar/Gz (archive.tar.gz)

Pour décompresser : "$ tar zxvf fichier.tar.gz"


- Tar/Bz2 (archive.tar.bz2)

Pour décompresser : "$ tar jxvf fichier.tar.bz2"


Le mieux c'est de consulter les manpages :-D

page 2 de 2 -