J'ai un répertoire plein de fichiers se terminant par différentes extensions, comment puis-je lister/sélectionner uniquement les fichiers se terminant par .in
et .out
correspondant qui partagent le même nom de base ?
ex.
file1.txt
file1.in
file2.in
file3.in
file2.out
file3.out
Ce que je veux sélectionner parmi ces fichiers sont :
file2.in
file2.out
file3.in
file3.out
Réponse acceptée :
Puisque vous voulez .in
à coupler avec .out
, boucle uniquement sur *.in
et vérifiez s'il existe un .out
correspondant fichier, si oui, imprimez les deux :
for f in *.in; do
if [[ -f ${f%.in}.out ]]; then
echo $f
echo ${f%.in}.out
fi
done