у меня есть:BASH эхо с СЭД
Location.txt (содержание)
some_line1
some_line2
some_line3
region.txt (содержание)
region1
region2
region3
uri.txt (содержание)
/some_text/some_text1/***/
/some_text/***/some_text2/
/***/some_text/some_text3/
Мне нужно создать файлы
region1
region2
region3
и каждый из них должен заполнить следующую (название региона вместо звезд)
Пример файла REGION1
/some_text/some_text1/region1/
some_line1
some_line2
some_line3
/some_text/region1/some_text2
some_line1
some_line2
some_line3
/region1/some_text/some_text3
some_line1
some_line2
some_line3
Пример из файла регионе2 (название региона вместо звезд)
/some_text/some_text1/region2/
some_line1
some_line2
some_line3
/some_text/region2/some_text2
some_line1
some_line2
some_line3
/region2/some_text/some_text3
some_line1
some_line2
some_line3
Теперь у меня есть
#!/bin/bash
while read region
do
while read uri
do
echo $uri >> "/home/user/regions/$region"
done < uri.txt
done < region.txt
Этот скрипт создает файлы с именами строк от region.txt
и заполняет его строками от uri.txt
.
Но мне нужно сделать много файлов. Каждый файл должен быть заполнен множеством мест, но одна строка в каждом месте должна быть изменена в строке от uri.txt
.
Похоже, я должен использовать
cat $file|sed 's/^was/now/'
, но я не знаю, как его использовать.
Любая помощь пожалуйста.
Где находится 'location.txt'?Вы указали его в начале описания и упомянули его в следующем абзаце, но вы не ссылаетесь на него нигде, так что неясно, какой контент вы ищете во всех областях '/ home/user/regions/$ region 'файлы. – lurker
, возможно, добавьте небольшой образец некоторых файлов, которые будут использоваться, и ожидаемый результат в одном из них. – NeronLeVelu
Извините. Я отредактировал мой пост –