Différences entre versions de « Manipulation de fichiers avec Bash »
De GBLL, TAL, ALAO, etc.
(25 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 32 : | Ligne 32 : | ||
== Bases de la base == | == Bases de la base == | ||
=== Redirection des entrées/sorties 🔃 === | === Redirection des entrées/sorties 🔃 === | ||
− | *< : Lire depuis un fichier d'entrée | + | *{{code|<|bash}} : Lire depuis un fichier d'entrée |
− | *> : Écrire dans un fichier de sortie (crée ou écrase le fichier de sortie) | + | *{{code|>|bash}} : Écrire dans un fichier de sortie (crée ou écrase le fichier de sortie) |
− | *>> : Append à la suite, sans écraser le fichier de sortie | + | *{{code|>>|bash}} : Append à la suite, sans écraser le fichier de sortie |
− | *| : Rediriger la sortie de la commande précédente vers l'entrée de la commande suivante (pipe) | + | *{{code|{{pipe}}|bash}} : Rediriger la sortie de la commande précédente vers l'entrée de la commande suivante (pipe<ref>{{code|Alt gr + 6}} (Linux, Windows) {{code|Alt + l}} (Mac)</ref>) |
=== Commandes basiques de navigation ⛵ === | === Commandes basiques de navigation ⛵ === | ||
− | *pwd : Affiche le chemin absolu depuis la racine jusqu'au rép. courant | + | *{{code|pwd|bash}} : Affiche le chemin absolu depuis la racine jusqu'au rép. courant |
+ | *{{code|cd <chemin>|bash}} : Aller vers <chemin> (absolu ou relatif à partir du rép. courant) | ||
+ | *:*{{code|cd sousDossier|bash}} : Aller dans sousDossier | ||
+ | *:*{{code|cd ..|bash}} : Aller dans le répertoire parent | ||
+ | *:*{{code|cd /|bash}} : Aller à la racine de l'ordinateur (sur Windows — gitbash —, il s'agit du dossier où est installé Git) | ||
+ | *:*{{code|cd ~|bash}} : Revenir au répertoire Home | ||
− | * | + | *{{code|ls|bash}} : Liste les fichiers et dossiers présents dans le répertoire courant |
− | + | *:*{{code|ls -F|bash}} : idem, liste que les fichiers | |
− | + | *:*{{code|ls -F /home|bash}} : Liste les fichiers dans le rép. /home | |
− | + | *:*{{code|ls -a|bash}} : Liste également les fichiers et dossiers cachés | |
− | + | *:*{{code|ls -l|bash}} : Affiche le détail de chaque élément | |
− | + | *:*{{code|ls -sh|bash}} : Affiche la taille | |
− | + | *:*{{code|ls -shS|bash}} : Affiche la taille et trie par taille | |
− | *:*ls -F : idem, liste que les fichiers | + | *:*{{code|ls -R|bash}} : Récursif : détail le contenu de chaque sous-répertoires |
− | *:*ls -F /home : Liste les fichiers dans le rép. /home | ||
− | *:*ls -a : Liste également les fichiers et dossiers cachés | ||
− | *:*ls -l : Affiche le détail de chaque élément | ||
− | *:*ls -sh : Affiche la taille | ||
− | *:*ls -shS : Affiche la taille et trie par taille | ||
− | *:*ls -R : Récursif : détail le contenu de chaque sous-répertoires | ||
=== Manipulation de fichiers === | === Manipulation de fichiers === | ||
− | *cat fichier.txt : Affiche le contenu du fichier dans le terminal | + | *{{code|cat fichier.txt|bash}} : Affiche le contenu du fichier dans le terminal |
− | *:*more fichier.txt : Afficher le contenu du fichier petit à petit (appuyer sur espace ou entrée pour afficher plus, ctrl+c pour quitter) | + | *:*{{code|more fichier.txt|bash}} : Afficher le contenu du fichier petit à petit (appuyer sur espace ou entrée pour afficher plus, ctrl+c pour quitter) |
− | *:*vim fichier.txt : Éditer le fichier.txt avec vim (éditeur en ligne de commande) | + | *:*{{code|head fichier.txt|bash}} : Affiche les 10 premières lignes |
− | *:*nano fichier.txt : Éditer le fichier.txt avec nano (éditeur en ligne de commande) | + | *:*{{code|tail fichier.txt|bash}} : Affiche les 10 dernières lignes |
− | *:*touch fichier.txt : Créer un fichier nommé fichier.txt | + | *:*{{code|head -n 50 fichier.txt|bash}} : Affiche les 50 premières lignes |
− | *:*cp fichier.txt nouveauNom.txt : Copie fichier.txt et le renomme en "nouveauNom.txt" | + | *:*{{code|vim fichier.txt|bash}} : Éditer le fichier.txt avec vim (éditeur en ligne de commande) |
− | *:*mv fichier.txt nouveauNom.txt : Renomme fichier.txt en "nouveauNom.txt" | + | *:*{{code|nano fichier.txt|bash}} : Éditer le fichier.txt avec nano (éditeur en ligne de commande) |
− | *:*cp fichier.txt sousDossier/ : Copie fichier.txt dans le répertoire "sousDossier" | + | *:*{{code|touch fichier.txt|bash}} : Créer un fichier nommé fichier.txt |
− | *:*mv fichier.txt sousDossier/ : Déplace fichier.txt vers le répertoire "sousDossier" | + | *:*{{code|cp fichier.txt nouveauNom.txt|bash}} : Copie fichier.txt et le renomme en "nouveauNom.txt" |
− | *:*rm fichier.txt : Supprime fichier.txt (Attention, pas de passage par la corbeille) | + | *:*{{code|mv fichier.txt nouveauNom.txt|bash}} : Renomme fichier.txt en "nouveauNom.txt" |
− | *:*rm -y fichier.txt : Supprime en demandant confirmation | + | *:*{{code|cp fichier.txt sousDossier/|bash}} : Copie fichier.txt dans le répertoire "sousDossier" |
+ | *:*{{code|mv fichier.txt sousDossier/|bash}} : Déplace fichier.txt vers le répertoire "sousDossier" | ||
+ | *:*{{code|rm fichier.txt|bash}} : Supprime fichier.txt (Attention, pas de passage par la corbeille) | ||
+ | *:*{{code|rm -y fichier.txt|bash}} : Supprime en demandant confirmation | ||
=== Manipulation de dossiers === | === Manipulation de dossiers === | ||
− | *mkdir nomDossier : Crée un nouveau dossier "nomDossier" | + | *{{code|mkdir nomDossier|bash}} : Crée un nouveau dossier "nomDossier" |
− | *cp -R nomDossier ../ : Copie le dossier nomDossier dans le répertoire parent | + | *{{code|cp -R nomDossier ../|bash}} : Copie le dossier nomDossier dans le répertoire parent |
− | *mv -R nomDossier ../ : Déplace le dossier nomDossier dans le répertoire parent | + | *{{code|mv -R nomDossier ../|bash}} : Déplace le dossier nomDossier dans le répertoire parent |
− | *rm -R nomDossier : Supprime le dossier nomDossier | + | *{{code|rm -R nomDossier|bash}} : Supprime le dossier nomDossier |
+ | |||
+ | == Analyses et manipulations un peu plus avancées == | ||
+ | === Comptage === | ||
+ | * {{code|wc fichier.txt|bash}} : Affiche le nombre de lignes, nombe de mots et nombre de caractères de fichiers.txt | ||
+ | *:* {{code|wc *.txt|bash}} : Affiche les infos pour chaque fichier .txt | ||
+ | *:* {{code|wc -l fichier.txt|bash}} : Affiche que le nombre de lignes | ||
+ | *:* {{code|wc -w|bash}} : Affiche que le nombre de mots | ||
+ | *:* {{code|wc *.txt > monFichier.txt|bash}} : Enregistre l'output de wc dans monFichier.txt (💩?) | ||
+ | *:* {{code|ls -l monDossier {{pipe}} wc -l|bash}} : Compte les fichiers dans le répertoire monDossier | ||
+ | |||
+ | === Tri === | ||
+ | * {{code|sort monFichier.txt|bash}} : Tri les lignes alphabétiquement | ||
+ | *:* {{code|sort -n monFichier.txt|bash}} : Tri numériquement | ||
+ | *:* {{code|sort -nr monFichier.txt|bash}} : Ordre numérique inversé | ||
+ | *:* {{code|sort -d monFichier.txt|bash}} : Tri dictionnarique | ||
+ | *:* {{code|sort -f monFichier.txt|bash}} : Tri en ignorant la casse (majuscules/minuscules) | ||
+ | *:* {{code|sort -k 1 monTableau.csv|bash}} : Tri sur la colonne 1 (la première est 0) | ||
+ | *:* {{code|sort -k 1.5 monTableau.csv|bash}} : Tri sur le 5ème caractère de la colonne 1 | ||
+ | *:* {{code|sort -n monFichier.txt {{pipe}} head -n 1|bash}} : Tri numériquement et affiche la première ligne | ||
+ | |||
+ | === Manipulation de texte === | ||
+ | * {{code|cat texte.txt|bash}} : Affiche le contenu de texte.txt | ||
+ | * {{code|cat texte.txt {{pipe}} tr [a-z]éèàç [A-Z]ÉÈÀÇ|bash}} : Passe tout le contenu en majuscules | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n'|bash}} : Remplace toutes les espaces par des sauts de ligne (pour afficher un mot par ligne) | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort|bash}} : Fait la même chose puis tri les mots | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq|bash}} : ...puis supprime les doublons dans la liste de mots | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq -c|bash}} : ...supprime les doublons et compte leur fréquence | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq -d|bash}} : ...affiche les doublons uniquement | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq -u|bash}} : ...affiche les hapax uniquement | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq -c {{pipe}} grep "saucisson"|bash}} : ...recherche le mot "saucisson" dans la liste des mots du texte | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq -c {{pipe}} sort -n|bash}} : ...tri la liste de mots par fréquence | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} sort {{pipe}} uniq -c {{pipe}} sort -nr|bash}} : ...tri la liste de mots par fréquence inverse | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} rev {{pipe}} sort {{pipe}} uniq -c|bash}} : remplace les espaces par des sauts de ligne, puis renverse les mots, pour chercher les rimes et en fait une liste ordonnée avec fréquence | ||
+ | * {{code|cat texte.txt {{pipe}} tr '''\n' {{pipe}} rev {{pipe}} sort {{pipe}} rev {{pipe}} uniq -c|bash}} : fait une liste des mots ordonnée par rime | ||
+ | |||
+ | === Concaténation de fichiers === | ||
+ | * {{code|cat file1.csv file2.csv > file3.csv|bash}} : Concatène verticale (file2 à la suite de file1) dans un nouveau fichier file3 | ||
+ | * {{code|paste file1.csv file2.csv > file3.csv|bash}} : Concaténation horizontale (colonnes de file2 à la suite des colonnes de file1) | ||
+ | * {{code|pdfunite in-1.pdf in-2.pdf in-n.pdf out.pdf|bash}} : merger des fichiers pdf | ||
+ | |||
+ | === Manipulation d'audio === | ||
+ | {{encart|nécessite le package ffmpeg : | ||
+ | * https://www.tophebergeur.com/blog/comment-installer-ffmpeg-sous-linux-et-ses-distributions/ | ||
+ | * https://manual.audacityteam.org/man/installing_ffmpeg_for_windows.html}} | ||
+ | * {{code|ffmpeg -i filename.wav newfilename.mp3|bash}} : conversion d'un fichier wav en mp3. | ||
+ | ** {{code|ffmpeg -i filename.wav -ar 44100 newfilename.mp3|bash}} : conversion d'un fichier .wav en .mp3 avec rééchantillonnage à 44.1kHz | ||
+ | ** {{code|ffmpeg -i filename.wav -b:a 320k newfilename.mp3|bash}} : conversion d'un fichier .wav en .mp3 en forçant le [[wfr:bitrate|bitrate]] à 320kb/s | ||
+ | ** <pre>ffmpeg -i input.wav -filter:a "volume=0.5" output.wav</pre> : baisser le volume de l'audio de 50% ([https://trac.ffmpeg.org/wiki/AudioVolume plus d'options ici]) | ||
+ | |||
+ | === Manipulation de photos === | ||
+ | {{encart|nécessite le package imagemagick (sudo apt install imagemagick)}} | ||
+ | ** {{code|convert old_image -resize 50% new_image|bash}} : Réduire une photo de 50%. | ||
+ | ** {{code|convert image_name.jpg image_name.png|bash}} : Convertir le format d'une image. | ||
+ | |||
+ | === Manipulation de vidéo === | ||
+ | * {{code|ffmpeg -i video_lourde.mp4 -vcodec h264 -acodec aac video_compresse.mp4|bash}} : compression vidéo (codec vidéo h264, audio AAC) | ||
+ | * {{code|ffmpeg -i test.mp4 -c:v libvpx -crf 15 -b:v 1M -c:a libvorbis test.webm|bash}} : conversion vers webm | ||
+ | * {{code|ffmpeg -i 'zoom séance 1 24.11.20 bis.mp4' -map a zoomAudio.wav|bash}} : extraction de l'audio d'une vidéo (format de sortie: wav) | ||
+ | |||
+ | === Boucle sur plusieurs fichiers === | ||
+ | * {{code|for f in *.txt; do head -n 1 $f; done|bash}} : boucle sur tous les fichiers .txt du dossier courant, et on affiche juste la première ligne de chaque. | ||
+ | * {{code|for f in *.txt; do echo $f; head -n 1 $f; done|bash}} : pareil mais on affiche le nom du fichier avant. | ||
+ | * {{code|for f in audio/*.wav; do python wav2param.py $f; done|bash}} : lance un script python (wav2param.py) sur chaque fichier .wav du dossier audio/ | ||
+ | * {{code|for f in *; ffmpeg -i $f $f.mp3; done|bash}} : convertit tous les fichiers du dossier en mp3. | ||
+ | |||
+ | === Manipulation de PDF === | ||
+ | * {{code|pdfunite coucou.pdf mimi.pdf boubou.pdf output.pdf|bash}} : merger les fichiers pdf coucou mimi et boubou en un seul fichier output.pdf | ||
+ | * {{code|pdftk input.pdf cat 1 5 10-12 output output.pdf|bash}} : spliter un pdf et récupérer seulement les pages 1, 5 et 10 à 12 | ||
+ | * {{code|pdftotext input.pdf output.txt|bash}} : extraction texte du contenu d'un pdf | ||
+ | * {{code|pdftotext -enc ASCII7 input.pdf output.txt|bash}} : extraction du contenu d'un pdf (2) | ||
+ | * {{code|lowriter --convert-to pdf fichier.docx|bash}} : convertir un docx en pdf | ||
+ | === Autres commandes pratiques === | ||
+ | * {{code|rename 's/ /_/g' *|bash}} : remplace les espaces par des underscores dans les noms de fichiers | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Catégorie:Mémo_technique]] | [[Catégorie:Mémo_technique]] |
Version actuelle datée du 14 septembre 2022 à 14:16
Cette page a pour objectif de vous présenter quelques commandes bash pour manipuler des fichiers et du texte sur votre ordinateur.
Installation de Bash
- Si vous êtes sur Windows, vous avez plusieurs 2 possibilités :
- Installer Bash For Windows, le plus simple pour une utilisation limitée, typiquement Git en ligne de commande.
- Activer le terminal Linux/Bash natif de Windows10, qui vous permettra d'utiliser la plupart des commandes Linux.
- Si vous êtes sur Mac, il suffit d'ouvrir votre terminal.
- Si vous êtes sur Linux, il suffit d'ouvrir votre terminal.
Quelques tutos pouvant aider :
- Grenoble Software Carpentry
- Git Bash for Windows, Bash Basics
- Tutoriel Windows : Bash sur Windows
- How to Run Linux/Bash on Windows 10 Using the Built-In Windows Subsystem for Linux
Ouvrir le terminal Bash
(parmi de nombreuses façons d'ouvrir votre terminal)
- WINDOWS avec Git Bash : Dans le dossier de votre choix, clic droit puis Git Bash Here ;
- Linux :
ctrl+alt+t
, ou dans un dossier clic droit puis ouvrir dans un terminal ; - Mac : entrez "terminal" dans le dock.
Certaines commandes présentées sur cette page sont susceptibles de ne pas fonctionner avec Bash For Windows (qui est un peu limité).
D'autres tuto :
- Command Line Essentials: Git Bash for Windows (bien détaillé)
- LINUX - LA BASE DES LIGNES DE COMMANDES 🤖
Bases de la base
Redirection des entrées/sorties 🔃
<
: Lire depuis un fichier d'entrée>
: Écrire dans un fichier de sortie (crée ou écrase le fichier de sortie)>>
: Append à la suite, sans écraser le fichier de sortie|
: Rediriger la sortie de la commande précédente vers l'entrée de la commande suivante (pipe[1])
pwd
: Affiche le chemin absolu depuis la racine jusqu'au rép. courantcd <chemin>
: Aller vers <chemin> (absolu ou relatif à partir du rép. courant)cd sousDossier
: Aller dans sousDossiercd ..
: Aller dans le répertoire parentcd /
: Aller à la racine de l'ordinateur (sur Windows — gitbash —, il s'agit du dossier où est installé Git)cd ~
: Revenir au répertoire Home
ls
: Liste les fichiers et dossiers présents dans le répertoire courantls -F
: idem, liste que les fichiersls -F /home
: Liste les fichiers dans le rép. /homels -a
: Liste également les fichiers et dossiers cachésls -l
: Affiche le détail de chaque élémentls -sh
: Affiche la taillels -shS
: Affiche la taille et trie par taillels -R
: Récursif : détail le contenu de chaque sous-répertoires
Manipulation de fichiers
cat fichier.txt
: Affiche le contenu du fichier dans le terminalmore fichier.txt
: Afficher le contenu du fichier petit à petit (appuyer sur espace ou entrée pour afficher plus, ctrl+c pour quitter)head fichier.txt
: Affiche les 10 premières lignestail fichier.txt
: Affiche les 10 dernières ligneshead -n 50 fichier.txt
: Affiche les 50 premières lignesvim fichier.txt
: Éditer le fichier.txt avec vim (éditeur en ligne de commande)nano fichier.txt
: Éditer le fichier.txt avec nano (éditeur en ligne de commande)touch fichier.txt
: Créer un fichier nommé fichier.txtcp fichier.txt nouveauNom.txt
: Copie fichier.txt et le renomme en "nouveauNom.txt"mv fichier.txt nouveauNom.txt
: Renomme fichier.txt en "nouveauNom.txt"cp fichier.txt sousDossier/
: Copie fichier.txt dans le répertoire "sousDossier"mv fichier.txt sousDossier/
: Déplace fichier.txt vers le répertoire "sousDossier"rm fichier.txt
: Supprime fichier.txt (Attention, pas de passage par la corbeille)rm -y fichier.txt
: Supprime en demandant confirmation
Manipulation de dossiers
mkdir nomDossier
: Crée un nouveau dossier "nomDossier"cp -R nomDossier ../
: Copie le dossier nomDossier dans le répertoire parentmv -R nomDossier ../
: Déplace le dossier nomDossier dans le répertoire parentrm -R nomDossier
: Supprime le dossier nomDossier
Analyses et manipulations un peu plus avancées
Comptage
wc fichier.txt
: Affiche le nombre de lignes, nombe de mots et nombre de caractères de fichiers.txtwc *.txt
: Affiche les infos pour chaque fichier .txtwc -l fichier.txt
: Affiche que le nombre de ligneswc -w
: Affiche que le nombre de motswc *.txt > monFichier.txt
: Enregistre l'output de wc dans monFichier.txt (💩?)ls -l monDossier | wc -l
: Compte les fichiers dans le répertoire monDossier
Tri
sort monFichier.txt
: Tri les lignes alphabétiquementsort -n monFichier.txt
: Tri numériquementsort -nr monFichier.txt
: Ordre numérique inversésort -d monFichier.txt
: Tri dictionnariquesort -f monFichier.txt
: Tri en ignorant la casse (majuscules/minuscules)sort -k 1 monTableau.csv
: Tri sur la colonne 1 (la première est 0)sort -k 1.5 monTableau.csv
: Tri sur le 5ème caractère de la colonne 1sort -n monFichier.txt | head -n 1
: Tri numériquement et affiche la première ligne
Manipulation de texte
cat texte.txt
: Affiche le contenu de texte.txtcat texte.txt | tr [a-z]éèàç [A-Z]ÉÈÀÇ
: Passe tout le contenu en majusculescat texte.txt | tr '''\n'
: Remplace toutes les espaces par des sauts de ligne (pour afficher un mot par ligne)cat texte.txt | tr '''\n' | sort
: Fait la même chose puis tri les motscat texte.txt | tr '''\n' | sort | uniq
: ...puis supprime les doublons dans la liste de motscat texte.txt | tr '''\n' | sort | uniq -c
: ...supprime les doublons et compte leur fréquencecat texte.txt | tr '''\n' | sort | uniq -d
: ...affiche les doublons uniquementcat texte.txt | tr '''\n' | sort | uniq -u
: ...affiche les hapax uniquementcat texte.txt | tr '''\n' | sort | uniq -c | grep "saucisson"
: ...recherche le mot "saucisson" dans la liste des mots du textecat texte.txt | tr '''\n' | sort | uniq -c | sort -n
: ...tri la liste de mots par fréquencecat texte.txt | tr '''\n' | sort | uniq -c | sort -nr
: ...tri la liste de mots par fréquence inversecat texte.txt | tr '''\n' | rev | sort | uniq -c
: remplace les espaces par des sauts de ligne, puis renverse les mots, pour chercher les rimes et en fait une liste ordonnée avec fréquencecat texte.txt | tr '''\n' | rev | sort | rev | uniq -c
: fait une liste des mots ordonnée par rime
Concaténation de fichiers
cat file1.csv file2.csv > file3.csv
: Concatène verticale (file2 à la suite de file1) dans un nouveau fichier file3paste file1.csv file2.csv > file3.csv
: Concaténation horizontale (colonnes de file2 à la suite des colonnes de file1)pdfunite in-1.pdf in-2.pdf in-n.pdf out.pdf
: merger des fichiers pdf
Manipulation d'audio
nécessite le package ffmpeg :
ffmpeg -i filename.wav newfilename.mp3
: conversion d'un fichier wav en mp3.ffmpeg -i filename.wav -ar 44100 newfilename.mp3
: conversion d'un fichier .wav en .mp3 avec rééchantillonnage à 44.1kHzffmpeg -i filename.wav -b:a 320k newfilename.mp3
: conversion d'un fichier .wav en .mp3 en forçant le bitrate à 320kb/sffmpeg -i input.wav -filter:a "volume=0.5" output.wav
: baisser le volume de l'audio de 50% (plus d'options ici)
Manipulation de photos
nécessite le package imagemagick (sudo apt install imagemagick)
convert old_image -resize 50% new_image
: Réduire une photo de 50%.convert image_name.jpg image_name.png
: Convertir le format d'une image.
Manipulation de vidéo
ffmpeg -i video_lourde.mp4 -vcodec h264 -acodec aac video_compresse.mp4
: compression vidéo (codec vidéo h264, audio AAC)ffmpeg -i test.mp4 -c:v libvpx -crf 15 -b:v 1M -c:a libvorbis test.webm
: conversion vers webmffmpeg -i 'zoom séance 1 24.11.20 bis.mp4' -map a zoomAudio.wav
: extraction de l'audio d'une vidéo (format de sortie: wav)
Boucle sur plusieurs fichiers
for f in *.txt; do head -n 1 $f; done
: boucle sur tous les fichiers .txt du dossier courant, et on affiche juste la première ligne de chaque.for f in *.txt; do echo $f; head -n 1 $f; done
: pareil mais on affiche le nom du fichier avant.for f in audio/*.wav; do python wav2param.py $f; done
: lance un script python (wav2param.py) sur chaque fichier .wav du dossier audio/for f in *; ffmpeg -i $f $f.mp3; done
: convertit tous les fichiers du dossier en mp3.
Manipulation de PDF
pdfunite coucou.pdf mimi.pdf boubou.pdf output.pdf
: merger les fichiers pdf coucou mimi et boubou en un seul fichier output.pdfpdftk input.pdf cat 1 5 10-12 output output.pdf
: spliter un pdf et récupérer seulement les pages 1, 5 et 10 à 12pdftotext input.pdf output.txt
: extraction texte du contenu d'un pdfpdftotext -enc ASCII7 input.pdf output.txt
: extraction du contenu d'un pdf (2)lowriter --convert-to pdf fichier.docx
: convertir un docx en pdf
Autres commandes pratiques
rename 's/ /_/g' *
: remplace les espaces par des underscores dans les noms de fichiers
- ↑
Alt gr + 6
(Linux, Windows)Alt + l
(Mac)