[Linux/MAC] commandes utiles

jeudi 28 juin 2012
Tester si un port et ouvert sur un serveur distant ou local:
2>/dev/null >/dev/tcp/localhost/80 && echo "Server on port 80 OK"
Changement de droit d’un dossier et de ses dossiers fils
sudo chmod 0777 -R /folder
Voir la fin d’un fichier de log et se met à jour automatiquement (temps réel):
tail -f ./file
Recherche dans un fichier
grep -r "search_word" ./folder
Recherche d’un fichier sur le disque dur:
find -name "key" -print
Copié un fichier (SFTP) depuis un serveur ssh et le -p préserve les droits/accès/date de modification
scp -r -p user@server:/pathway_server /pathway_local 
Copié un fichier (SFTP) en local vers un serveur ssh via un port différent du port 22
scp -r -P 80 /pathway_local user@server:/pathway_server 
Si vous souhaitez ne plus encoder votre mot de passe pour chaque connexion à un serveur en ssh, une fois la clé publique générer sur votre machine
ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host
Pour voir l’espace disque disponible sur un serveur linux
df -h
Pour compter le nombre de ligne d’un fichier:
wc -l file.txt
Charset d’un fichier
file -I file.txt
Pour exécuter une requête post sur un serveur avec upload de fichier:
curl -X POST -F  "param1=value1" -F "param2=value2" -F "data=@/path/file" http://host/page.php
Pour exécuter une requête post sur un serveur:
curl -d "param1=value1&param1=value1" http://host/page.php
Pour charger un serveur web
curl -s "http://domain.com/?[1-20]"
Pour faire une recherche dans un fichier:
grep -i 'recherche' pathfile
Compresser un dossier:
zip -9 -r <zip file> <folder name>
Décompresser un fichier zip
unzip file.zip -d destination_folder
Créer un cron pour user (pas besoin d’être root):
crontab -e
Pour la configuration du cron, un lien très utile.

Pour lister les tâches récurrentes (crons) de l’utilisateur loggé

crontab -l

Mais il ets plus intéressant de trouver les crons de l’utilisateur apache par exmeple

crontab -l -u www-data
Pour vider le contenu d’un fichier:
cat /dev/null > file
Pour rechercher les fichiers modifiés depuis 5 jour:
find . -type f -mtime -5 -exec ls -l {} \;
Pour compresser avec tar tout en préservant les droits
tar -p -czf nom-du-tar.tar.gz le-directory-a-tarer
Pour décompresser avec tar tout en préservant les droits
tar -p -xzf nom-du-tar.tar.gz
Pour savoir ou on est
pwd
Pour changer les droits de tous les fichiers sous le dossier « /home/sitename/www »
find /home/sitename/www -type f -exec chmod 644 {} \;
Pour changer les droits de tous les dossier sous le dossier « /home/sitename/www »
find /home/sitename/www -type d -exec chmod 755 {} \;
Pour créer un répertoire virtuel
ln -s /path/file/to/go/ name_virtual
Il est aussi possible de créer des lien vers un script avec ln et pour le rendre accessible partout, il suffit de faire un lien symbolique depuis le répertoire « /usr/local/bin/ ».

Trouver le chemin d’un script

which -a script_name

Changer le mot de passe du user

passwd

Revenir dans le dossier précédent (pas nécessairement le parent !)

cd -

Afficher la taille d’un fichier en MB

ls -l --block-size=M ./path/file 

Analyser le processeur, la mémoire et aussi les processus du serveur

htop

Tags: Linux