Linux

ps -aux | grep $user

Tuer des procees en cours :

ps aux | grep chr | grep ftp | awk '{print "kill -9 " $2}'

puis copier coller les kill affichés par la commande ci-dessus pour les exécuter

lsof -p process

Comparaison de deux repertoires, fichiers :

meld rep1 rep2

tkdiff file& file2

vi -d file1 file2

Envoyer la sortie standard (1) et les erreurs (2) d'un commande dans un meme fichier :

./launch_tests_with_coverage.sh > results_tests_on_scylla 2>&1

Version du noyau d'une machine : uname -a

Linux tioman.cerfacs.fr 4.15.12-201.fc26.x86_64 #1 SMP Thu Mar 22 19:24:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

sinon voir fichiers :
cat /proc/meminfo
cat /proc/cpuinfo

ou "uname -r"

Commande pour avoir la memoire d'une machine :

cat /proc/meminfo

IP d'une machine :

hostname -i

Pour savoir si une machine est connectée :

ping nom_machine

Pour savoir ensuite qui travaille dessus : se connecter

faire la commande 'w'

Version d'un compilateur pgf90 :

pgf90 -V

Version d'une librairie openmpi :

ompi_info

Netcdf : pour trouver les include et les libs sur une machine

[dast@ader ~]$ /usr/local/netcdf/4.4.1/bin/nf-config --fflags -I/usr/local/netcdf/4.4.1/include
[dast@ader ~]$ /usr/local/netcdf/4.4.1/bin/nf-config --flibs -L/usr/local/netcdf/4.4.1/lib -lnetcdff -Wl,-rpath,/usr/local/hdf5/1.8.16/lib -L/usr/local/hdf5/1.8.16/lib -Wl,-rpath,/usr/local/netcdf/4.4.1/lib -L/usr/local/netcdf/4.4.1/lib -lnetcdf -lnetcdf

Screen : permet de lancer un process en batch et de se deloguer

screen -S cpl6273wx
screen -ls
> There is a screen on: 14314.cpl6273wx (Detached)
1 Socket in /var/run/screen/S-cglo355.
screen -d

screen -ls
> There is a screen on: 14314.cpl6273wx (Detached)
1 Socket in /var/run/screen/S-cglo355.

Remove dead screens with 'screen -wipe' ID

ls -l /var/run/screen/S-coquart/

rm /var/run/screen/S-coquart/8718.era5_hfls

Memoire occupee par tous les fichiers (* et .*) dans un repertoire donne  (a utiliser notamment pour faire du menage sur le $HOME) :

du -sk * .??* | sort -nr

Imprimer un fichier texte :

paps file.txt > file.ps

evince file.ps    + choix de l'imprimante

Commande pour compter les fichiers :

find . -type f | wc -l
 

Commande pour compter les répertoires :

find . -type d  | wc -l

Commande pour convertir un fichier d'un format a un autre (ps to gif, png to pdf ...)

convert file.ps file.gif  ;  convert file.png file.pdf

Commande pour effacer des fichiers qui n'appartiennent pas au $USER dans un repertoire :

rm  -f   repertoire/*     (-f == force)

Capture d'un ecran sous fedora26 :

spectacle &

Sed :

To run multiple sed commands, you can use the -e option : sed -e 's/This/That/ ; s/test/another test/' ./myfile 

The g flag means global, which means a global replacement for all occurrences : sed 's/test/another test/g' myfile

The p flag prints each line contains a pattern match, you can use the -n option to print the modified lines only : sed -n 's/test/another test/p' myfile

Changement des droits sur des fichiers (pas des repertoires) :

pour changer  les permissions des fichiers en 644 dans le repertoire courant 
find . -type f -exec chmod 644 {} \;
pour changer  les permissions des repertoires en 755 dans le repertoire courant 
find . -type d -exec chmod 755 {} \;

Synchronisation de fichiers (rsync mieux que scp ou cp ou mv) :

rsync -av --copy-links /tmp/foo/ /tmp/bar : will transfer only all files INSIDE the specified source directory foo

ou

rsync -av --copy-links /tmp/foo /tmp/bar : will transfer the source directory foo itself with all files inside

Copier des repertoires en copiant en dur les liens symboliques :

cp   -Lr   rep_toto   rep_titi

Listing uniquement des repertoires (sans les fichiers dedans) :

ls -d  */   ou ls  -d  rep_nom*/

Processus en arrière plan :

L'option &, bien qu'assez couramment utilisée, a ce défaut non négligeable : le processus reste attaché à la console, ce qui veut dire que si la console est fermée ou que l'utilisateur se déconnecte, le processus sera automatiquement arrêté. Si on veut que le processus continue, il faut lancer la commande via nohup

Merger plusieurs fichiers pdf en un seul :

pdfunite fiel1.pdf file2.pdf file3.pdf  output.pdf

Gerer les attributs des variables d'un fichier NetCDF : ncatted

The key to mastering ncatted is understanding the meaning of the structure describing the attribute modification, att_dsc. Each att_dsc contains five elements, which makes using ncatted somewhat complicated, but powerful. The att_dsc argument structure contains five arguments in the following order:

att_dsc = att_nm, var_nm, mode, att_type, att_val

Example : add attribute standard_name='precipitation_flux' in ERA5

ncatted -a standard_name,pr,c,c,'precipitation_flux' pr_Amon_reanalysis_ERA5_197901-201812.nc

Connexion par clé ssh :

cd .ssh
ssh-keygen -t rsa -b 4096
Generating public/private rsa key pair.
Enter file in which to save the key (/home/globc/coquart/.ssh/id_rsa): id_rsa_climserv
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa_climserv.
Your public key has been saved in id_rsa_climserv.pub.

ssh -i id_rsa_climserv lcoquart@machine.fr

Published on  January 13th, 2020