edit: спасибо. Я думаю, что с синтаксисом сценарий теперь работает нормально.
Мой сценарий принимает 4 параметра:
- log_file_name
- program_name
- input_file_name
- output_file_name
Я хочу перенаправить входной файл в программу (в c), а затем перенаправить вывод в файл журнала. затем проверьте различия с нужным заданным выходным файлом (параметр 4). Какой самый элегантный способ сделать это?
Я попробовал следующий код, который не работал -
#!/bin/bash
$2.c < $3 > $1
var = `diff $1 $4`
if [[ var=="" ]]
then echo "Out files match"
exit 0
fi
echo "Out files mismatch"
exit 1
У меня есть другой скрипт, который предварительно компилирует файл. c
#!/bin/bash
gcc -Wall -o $2 $2.c &> $1
var=`grep -e warnings -e errors $1`
if [[ $var == "" ]]
then echo "Compile succeeded"
exit 0
fi
echo "Compile failed"
exit 1