#1 Le 21/07/2010, à 01:46
- tiof
afficher la presence de un ou deux fichier
salut,
je voudrais faire un script, mais ca commence mal, voici, l'exemple qui ne fonctionne pas
if ls -1 | sed 1d
then
echo 2fichier
else
echo 1fichier
fi
je voulais que si deux fichiers dispo il me le signale, donc je fais un ls et je retire la premiere ligne pour savoir si il y a deux fichiers.
Mais ca marche pas...
Donc j'aimerais savoir comment le faire sans donner de nom de fichier
merci
Hors ligne
#2 Le 21/07/2010, à 01:51
- NooP
Re : afficher la presence de un ou deux fichier
#!/bin/bash
COUNT=`ls -1 | wc -l`
if [ $COUNT -gt 1 ]; then
echo "Plus de 1 fichiers trouvés"
fi
Votez Macron, vous l'aurez dans le fion !
Hors ligne
#3 Le 21/07/2010, à 02:07
- tiof
Re : afficher la presence de un ou deux fichier
merci beaucoup
Hors ligne
#4 Le 21/07/2010, à 07:22
- Watael
Re : afficher la presence de un ou deux fichier
je retire la premiere ligne pour savoir si il y a deux fichiers.
pourquoi ?
une solution tout bash
#!/bin/bash
shopt -s nullglob
dir="${1:-.}"
Fichiers=( $dir/* )
n=${#Fichiers[@]}
(( n )) && {
(( n >= 2 )) && echo "il y a deux fichiers, ou plus" || {
(( n < 2 )) && echo "il y a un fichier"
}
} || echo "il n'a pas de fichier"
en clair
#!/bin/bash
shopt -s nullglob
dir="${1:-.}"
Fichiers=( $dir/* )
n=${#Fichiers[@]}
if [ -n "$n" ]; then
if [ $n -ge 2 ]; then
echo "il y a deux fichiers, ou plus"
elif [ $n -lt 2 ]; then
echo "il y a un fichier"
fi
else
echo "il n'y a pas de fichier"
fi
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 22/07/2010, à 09:01
- nesthib
Re : afficher la presence de un ou deux fichier
sinon la méthode simple et éprouvée :
if [ "$(ls -A /chemin/vers/mon/dossier/)" ]; then
echo "dossier non vide"
else
echo "dossier vide"
fi
ou encore
[ "$(ls -A /chemin/vers/mon/dossier/)" ] && echo "dossier non vide" || echo "dossier vide"
NB. le test […] vérifie simplement si la chaîne entre "…" existe ou non
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne