Вы действительно должны полностью избежать любых переменных данных, которые вы можете использовать в regexp. Например:
printf %s\\n "$ddrs" |
sed -e'# the RHS field needs backslashes' \
-e'# delimiter, and newlines escaped.' \
-e'H;1h;$!d;g;s|[\/]|\\&|g;s|\n|\\&|g' \
-e'# now the string is s/// safe, so ' \
-e's|.*|s/\\("browser\\.startup\\.homepage",\\) ".*"/\\1 "&"/|' |
sed -i "" -f- ./path/to/your/edit/file
-121--125208- 1966Мустанг ответ правильный.
pg _ hba.conf
, если вы доверяли всем IP для подключения вашего сервера. Не было бы проще просто установить домашнюю страницу на один URL-адрес, который вернул перенаправление на случайную страницу из базы данных URL домашней страницы?
Таким образом, рандомизация домашней страницы будет происходить каждый раз, когда вы нажимаете на Home (или открываете новую вкладку/страницу, которая переходит в Home), а не только каждый раз Это также избежать необходимости возиться с вашей firefox config все время.
Для этого самым простым способом было бы установить минималистский веб-сервер где-нибудь, который поддерживал сценарии CGI, и написать простой CGI, который выдал перенаправление URL на каждый запрос, с URL, поступающими из простой базы данных (даже текстовый файл мог бы сделать).
Что-то вроде этого может сработать:
find -type f -name \*.tex -print0 | sort -z | xargs -0 cat >> blub.txt
Параметр print0
для find
использует символ NUL
для разграничения найденных объектов, который можно использовать с sort -z
для их лексического порядка; затем мы загружаем этот упорядоченный список в xargs
.
Если у вас не слишком много общих каталогов, вы можете заставить find
проходить пути по порядку, указав их все в команде -строка:
shopt -s globstar
find **/ -name '*.tex' -exec cat {} \; > blub.txt
(Использование синтаксиса bash для включения рекурсивного **
glob ). Глоб расширяется в естественном порядке сортировки, поэтому сначала сортируются годы, а затем каждый из месяцев с числовым префиксом -будет сортироваться внутри каждого года. Завершающая косая черта просит bash возвращать только каталоги, позволяя find
найти файлы.
В качестве альтернативы, если у вас есть список лет в виде подкаталогов, вы можете перебрать его в цикле:
for year in *
do
find "$year"/* -name '*.tex' -exec cat {} \;
done > blub.txt
Это расширяет 12 месяцев каждого года в каждом цикле, снова заставляя find
обрабатывать их по порядку.