Commande File
Vinz Montréal
Messages postés
11
Statut
Membre
-
jisisv Messages postés 3678 Statut Modérateur -
jisisv Messages postés 3678 Statut Modérateur -
Salut,
Je voudrais savoir comment je peux renommer un fichier (par exemple de type text) avec un if et la commande file.
Par exemple, j'ai fichier toto, je veux lui dire si le fichier est de type text alors renomme le toto.txt
J'utilise la commande file :
if [file toto est de type text]; then
mv toto toto.txt
fi
Je ne vois pas comment exprimer la partie : est de type text ???
Merci pour votre aide
Je voudrais savoir comment je peux renommer un fichier (par exemple de type text) avec un if et la commande file.
Par exemple, j'ai fichier toto, je veux lui dire si le fichier est de type text alors renomme le toto.txt
J'utilise la commande file :
if [file toto est de type text]; then
mv toto toto.txt
fi
Je ne vois pas comment exprimer la partie : est de type text ???
Merci pour votre aide
3 réponses
-
Bonjour,
Dans quel environnement ?
Avec quel langage ? -
Salut,
Il s'agit d'un script shell en Bash pour Linux.
Merci -
Hello,
Tu peux t'inspirer de ce code:johand@osiris:~/src/bash$ cat a.b.c Hello johand@osiris:~/src/bash$ cat myrename.sh #!/bin/sh [ $# -eq 1 ] || exit 1 BASE=${1%.?*} MIMETYPE=$(file -i "$1" | cut -d " " -f2| cut -d ";" -f1) #echo ${MIMETYPE} M1=${MIMETYPE%%/?*} M2=${MIMETYPE##?*/} echo "M1: ${M1}" echo "M2: ${M2}" case "$M1" in "text") mv "$1" "${BASE}.txt" ;; *) echo "Tu développes toi-même" ;; esac johand@osiris:~/src/bash$ ./myrename.sh a.b.c M1: text M2: plain johand@osiris:~/src/bash$ ls -ltr| tail -1 -rw-r--r-- 1 johand johand 6 13 fév 09:12 a.b.txt
Tu complètes ton script en effectuant les "case" appropriés seln tes envies.
Johan
Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)