У меня есть файл list.dat, в котором у меня есть имена 100 file.txt:Баша: изменить имя файла с помощью списка
file1.ic
file2.ic
file3.ic
...
file100.ic
Я хочу, чтобы прочитать этот файл и изменить внутри program.f90 имя этого файла итеративно. У меня есть все файлы в том же каталоге. Мой файл Баш:
#!/bin/bash
touch list.dat
input='file.in'
find . -type f -mtime +15 > list.dat
for G in $(cat list.dat)
do
sed -i "48s/$input/$G/" program.f90
input=$G
done
Но я получаю следующее сообщение об ошибке:
sed: expression -e #1, character 14: option of s unknown
.
Не могли бы вы мне помочь? большое спасибо !
Я полагаю, ваши имена файлов в '$ input' или' $ G' содержат недопустимых символы. – Cyrus
Мой файл на входе - «file.in» и имеет только числа. –