Ваша оболочка не знает английского языка, поэтому автоматическая генерация прописанных -чисел с правильными суффиксами для произвольного числа потребовала бы некоторых дополнительных усилий. Используя только цифры для нумерации и дополнительное предположение, что log1.txt является более длинным файлом, попробуйте следующее:
#!/bin/bash
log1_length=$(wc -l <log1.txt)
log2_length=$(wc -l <log2.txt)
for i in $(seq $log1_length); do
arg1=$(head -$i <log1.txt | tail -1)
arg2=$(head -$(((i-1) % log2_length + 1)) <log2.txt | tail -1)
echo "Color No. $i $arg1 is $arg2."
done
Вы пытаетесь открыть файл как не -пользователь root.
Разрешения на файл позволяют владельцу файла открывать его для чтения (и записи )и запрещают любой доступ к группе и "другим". Это то, что показывает ваш вывод ls -l
.
Владельцем файла является пользователь root, и вы выполняете свой код от имени пользователя, который не является root. Вот почему вы получаете ошибку «Отказано в доступе».