Witam.
Mam problem z napisaniem skryptu, który przeprowadza kompilację. Oto treść zadania:

Napisać skrypt, który

  • próbuje skompilować wszystkie pliki z aktualnego katalogu, mające rozszerzenie .c,
  • dla żadnego z nich nie wyświetla informacji o błędach kompilacji,
  • te, które nie dają żadnych błędów kompilacji, wykonuje na danych o tej samej nazwie ale z
    rozszerzeniem .in i zapisuje wyniki działania w plikach o tej samej nazwie z rozszerzeniem .out.
    Wskazówka
    : jeśli program poprawnie kończy działanie, to po jego wykonaniu wartość zmiennej
    $PIPESTATUS jest 0; w przeciwnym razie jest niezerowa.

Aktualnie wykombinowałem taki skrypt. Wiem, że nie działa dobrze i być może cały jest niepoprawny, ale tylko tyle zdołałem napisać, bo jestem początkującym. Bardzo proszę o poprawienie skryptu i jakieś wskazówki dotyczące programowania w Bashu. Z góry dziękuję za pomoc.

#!/bin/bash

files=(`find \`pwd\` -iname "*.c" `)
for file in ${files[*]}
do
echo $file
gcc -c -Wno-all "$file" -o "$file"
done

for file in ${files[*]}
do
./"$file" < "$file.in" > "$file.out"
done

exit 0