Ho una directory piena di file che terminano con estensioni diverse, come posso elencare/selezionare solo i file che terminano con .in
e il corrispondente .out
che condividono lo stesso nome di base?
es.
file1.txt
file1.in
file2.in
file3.in
file2.out
file3.out
Quello che voglio selezionare da questi file sono:
file2.in
file2.out
file3.in
file3.out
Risposta accettata:
Dal momento che vuoi .in
da abbinare a .out
, scorre solo *.in
e controlla se esiste un .out
corrispondente file, in tal caso, stampa entrambi:
for f in *.in; do
if [[ -f ${f%.in}.out ]]; then
echo $f
echo ${f%.in}.out
fi
done