====== Linux / Commandes ======
{{ ::linuxcommandlinecheatsheet.pdf |Linux Command Line Cheat Sheet}}
===== Rechercher un fichier par son nom =====
* Syntaxe générale
find /dir/to/search -name "file-to-search"
* Trouver les fichiers perl depuis le répertoire courant
find . -name '*.pl'
* Lister seulement les fichiers (pas les répertoires)
find . -type f -name '*.pl
L'option //**-type -f**// spécifie de ne pas chercher les répertoires
* Chercher dans tous les répertoires
find / -type f -name httpd.conf
* Chercher les fichiers avec une taille spécifique
Chercher les fichiers de plus de 650 MB dans le répertoire ~/Downloads/
find ~/Downloads/ -size +650M
Chercher les fichiers de plus de 1 GB dans le répertoire ~/Downloads/
find ~/Downloads/ -size +1G
Chercher les fichiers de plus de 1 kB dans le répertoire ~/Downloads/
find ~/Downloads/ -size +1024k
===== Nombre de fichiers dans un répertoire =====
Dans le répertoire courant
ls | wc -l
En spécifiant un répertoire
ls /etc | wc -l
===== Utilisation disque =====
==== Liste des fichiers triés par taille ====
Du plus grand au plus petit
$ ls -S -l
Du plus petit au plus grand
$ ls -lSr
==== Taille dispo ====
sudo df -h
==== Taille d'un repertoire ====
du -sh /le_repertoire
==== Taille du repertoire dans lequel je suis ====
du -sh .
===== Compression =====
==== Compression avec zip ====
Création
zip -r output_file.zip file1 folder1
Extraction
unzip nom_du_fichier.zip -d destination
==== Compression avec gzip (.tar.gz) ====
Création
tar zcvf votre_archive.tar.gz votre_dossier/
Extraction
tar zxvf votre_archive.tar.gz
==== Compression avec Bzip2 (.tar.bz2) ====
**Remarques :** Bzip crée des fichiers beaucoup plus petits que Gzip, mais utilise plus de ressources processeur surtout pour compresser.
Création
tar jcvf votre_archive.tar.bz2 votre_dossier/
Extraction
tar -jxvf votre_archive.tar.bz2
==== Utilisation tar seul : concaténation de fichiers ====
Création d'une archive, archivage de plusieurs fichiers :
tar -cvf archive.tar spencel1 fichierarchive2...
De même pour un dossier :
tar -cvf archivedossier.tar dossier/
==== tar : extraction de fichiers ====
tar xvf archivedossier.tar --> désarchive et décompresse
===== Copier un fichier d'un serveur à un autre =====
# download: remote -> local
scp user@remote_host:remote_file local_file
Exemple
scp nxuser@vdemopro1136dsy.extranet.3ds.com:/tmp/cloudview-V6R2020x.R0.101779-linux-x64.zip /tmp/cloudview-V6R2020x.R0.101779-linux-x64.zip
===== Arrêter le serveur =====
sudo halt
===== Arrêter le wifi =====
sudo ifconfig wlan0 down
===== Apache =====
==== Redémarrer Apache ====
sudo /etc/init.d/apache2 restart
==== Arrêter Apache ====
sudo /etc/init.d/apache2 stop
==== Démarrer Apache ====
sudo /etc/init.d/apache2 start
===== Crontab =====
==== Afficher la liste des actions ====
crontab -l
==== Supprimer toutes les actions ====
crontab -r
==== Editer les actions ====
crontab -e
==== Syntaxe ====
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user command to be executed
==== Exemples ====
Exécution tous les jours à 22h00 d'une commande et rediriger les infos dans sauvegarde.log :
00 22 * * * /root/scripts/sauvegarde.sh >> sauvegarde.log
Exécution d'une commande toutes les 6 heures :
00 */6 * * * /root/scripts/synchronisation-ftp.sh
==== Logs ====
grep CRON /var/log/syslog
===== Créer un lien symbolique =====
Pour un fichier :
ln -s source_file myfile
Pour un répertoire :
ln -s /path/to/dir /path/to/symlink
===== Chmod/Chown =====
Pour changer le propriétaire d'un fichier
chown e4apop:e4apop Access.xml