Remplacement de la page FAQ qu'on n'a jamais remplie par une ébauche de page de trucs et astuces linux
This commit is contained in:
parent
4d50a3af92
commit
8ad0597f48
2 changed files with 134 additions and 2 deletions
|
@ -103,6 +103,6 @@ pygmentCodeFences = true
|
|||
weight = 5
|
||||
|
||||
[[menu.main]]
|
||||
name = "FAQ"
|
||||
url = "/faq/"
|
||||
name = "Trucs et Astuces"
|
||||
url = "/trucs-et-astuces/"
|
||||
weight = 6
|
||||
|
|
132
content/trucs-et-astuces.md
Normal file
132
content/trucs-et-astuces.md
Normal file
|
@ -0,0 +1,132 @@
|
|||
---
|
||||
title: Trucs Et Astuces
|
||||
subtitle: Compilation de commandes bien utiles sous linux
|
||||
comments: false
|
||||
weight: 30
|
||||
---
|
||||
|
||||
## Partager une console avec tmux
|
||||
Créer une nouvelle session
|
||||
```
|
||||
tmux new-session -s shared # pour lancer une session
|
||||
tmux new -s shared # pour lancer une session
|
||||
```
|
||||
(`shared` c'est le nom de la session partagée, qu'on peut remplacer par ce qu'on veut.)
|
||||
|
||||
Rejoindre une session existante
|
||||
```
|
||||
tmux attach-session -t shared #
|
||||
tmux a -t shared # pour rejoindre la session
|
||||
```
|
||||
|
||||
Pour scroller dans tmux : `Ctrl-b` puis `[`
|
||||
Ensuite utiliser les touches habituelles pour scroller (flèches haut/bas, PgUp/PgDn). Et tapper `q` pour quitter le mode scrolling.
|
||||
|
||||
Créer une autre fenêtre dans une session tmux : `Ctrl-b` puis `c`
|
||||
|
||||
Passer d'une fenêtre à l'autre : `Ctrl-b` puis `n` (next) ou `Ctrl-b` puis `p` (previous) ou `Ctrl-b` puis `w` (windows list)
|
||||
|
||||
Par défaut les fenêtres prennent le nom du programme en cours d'execution. Mais on peut leur fixer un nom de son choix avec `Ctrl-b` puis `,`
|
||||
|
||||
Plus d'info sur tmux : https://www.howtogeek.com/671422/how-to-use-tmux-on-linux-and-why-its-better-than-screen/
|
||||
|
||||
|
||||
## Générer un mot de passe aléatoire
|
||||
|
||||
mdp de 16 caratères :
|
||||
```
|
||||
$ openssl rand -base64 12
|
||||
hSvo9XgXaMIGX6/0
|
||||
```
|
||||
mdp de N caractères, 1<=N<=24 :
|
||||
```
|
||||
$ openssl rand -base64 18 | cut -c -24
|
||||
4nh6ppEY33szuU++n3wJgAat
|
||||
```
|
||||
(remplacer le 24 à la fin pour un mdp plus court)
|
||||
|
||||
|
||||
|
||||
## PostgreSQL
|
||||
### psql, le client sql en ligne de commande
|
||||
Lancer le client en ligne de commande
|
||||
`sudo -u postgres psql`
|
||||
`psql -U user -d database -W`
|
||||
`psql -h host -U user -d database -W`
|
||||
`psql -h host -U user "dbname=db sslmode=require"`
|
||||
|
||||
Puis dans le client psql :
|
||||
|
||||
- Se connecter à une autre base de donnée
|
||||
`\c db_name`
|
||||
`\c db_name user_name`
|
||||
|
||||
- Lister les tables de la db courante
|
||||
`\dt`
|
||||
|
||||
- Lister les colonnes d'une table
|
||||
`\d table_name`
|
||||
ou `\d "Table_Name"` si le nom de la table contient des majuscules
|
||||
|
||||
- Rediriger la sortie des requêtes vers un fichier texte
|
||||
`\o /tmp/file-name.txt`
|
||||
Puis pour restorer la sortie par défaut à l'écran
|
||||
`\o`
|
||||
|
||||
### Autres utilitaires postgresql
|
||||
Créer un user
|
||||
`sudo -u postgres createuser -P peertube`
|
||||
|
||||
Créer une db
|
||||
`sudo -u postgres createdb -O owner_user_name -E UTF8 -T template0 db_name`
|
||||
(le user `owner_user_name` doit avoir été crée au préalable)
|
||||
|
||||
Faire un dump d'une db
|
||||
`sudo -u postgres pg_dump -Fc db_name > /tmp/db_name-dump.db`
|
||||
|
||||
Restorer une db a l'identique a partir d'un dump
|
||||
`sudo -u postgres pg_restore -c -C -d postgres /tmp/peertube_prod-dump.db`
|
||||
(la db de destination sera suprimée et re-crée avec le nom qu'elle avait au moment du dump)
|
||||
|
||||
Restorer un dump dans une db différente de celle d'origine
|
||||
`sudo -u postgres pg_restore -d other_db_name /tmp/peertube_prod-dump.db`
|
||||
(la db de destination `other_db_name` doit avoir été crée au préalable)
|
||||
|
||||
|
||||
## vi
|
||||
https://www.cs.colostate.edu/helpdocs/vi.html
|
||||
|
||||
Commandes vi les plus utiles :
|
||||
|
||||
| Commande | Description |
|
||||
|----------|-------------|
|
||||
| i | Passer en mode insertion ([Esc] pour en sortir)|
|
||||
| u | Undo / Redo|
|
||||
| x | Supprimer un caractère|
|
||||
| Nx | Supprimer N caractères|
|
||||
| D | Supprimer la fin de la ligne a partir de la position du curseur|
|
||||
| dd | Supprimer complètement la ligne courante|
|
||||
| Ndd ou dNd | Supprimer N lignes|
|
||||
| yy | Copier (yank) la ligne courante dans le buffer|
|
||||
| Nyy ou yNy |Copier N lignes dans le buffer|
|
||||
| p | Coller (paste) le contenu du buffer dansle texte après la ligne courante |
|
||||
|
||||
|
||||
## Rechercher des fichiers
|
||||
|
||||
Chercher des fichiers par une partie de leur nom
|
||||
`find /répertoire/ou/chercher -name '*.jpg'`
|
||||
|
||||
La même chose sans distinction de la casse
|
||||
`find /répertoire/ou/chercher -iname '*.jpg'`
|
||||
|
||||
Chercher des fichiers par leur contenu
|
||||
`find /répertoire/ou/chercher -name '*.txt' -exec grep -li "texte à chercher" {} \;`
|
||||
L'option -l de grep permet d'afficher les noms des fichiers trouvé plutot que les lignes contenant le texte cherché
|
||||
L'option -i de grep permet d'ignorer la casse. L'enlever si non nécessaire donne de meilleures performances
|
||||
|
||||
La même chose mais dans tous les fichiers, quelque soit leur nom, mais en excluant les répertoires pour éviter que grep ne génère des erreurs
|
||||
`find /répertoire/ou/chercher -type f -exec grep -li "texte à chercher" {} \;`
|
||||
(en fait ca exclue plus que les répertoires, les liens symboliques aussi :-( )
|
||||
|
||||
|
Loading…
Reference in a new issue