Показательный пример. Я хочу знать, имеет ли какой-либо набор файлов в качестве первой строки '------'.
Итак,
for file in *.txt
do
if [[ `head -1 "$file"` == "------" ]]
then
echo "$file starts with dashes"
fi
done
Дело в том, что head возвращает содержимое с новой строкой, но "------" не имеет новой строки.
Почему это работает?