Linux - найти файлы и добавить строку

Garin33
На сайте с 31.08.2009
Offline
169
890

Хотел добавить сразу во все php.ini настройки. Команда такая:


find /var/www -name "php.ini" | while read -r file; do
echo '111' >> $file;
done;

Добавляет по две строчки 111, всего три строки, а в чем ошибка не вижу.

Потому что Drupal - это круто.
unreturned
На сайте с 20.03.2013
Offline
57
#1

Попробуйте воспользоваться командой

find /var/www/ -type f -name 'php.ini' -exec sed -i '$ a \111' {} \;
lealhost
На сайте с 07.06.2014
Offline
136
#2
Garin33:
Хотел добавить сразу во все php.ini настройки. Команда такая:


find /var/www -name "php.ini" | while read -r file; do
echo '111' >> $file;
done;


Добавляет по две строчки 111, всего три строки, а в чем ошибка не вижу.

В вашем скрипте нет ошибок.

Возможно, есть символические ссылки на файл, вот и пишет два раза. :)

unreturned
На сайте с 20.03.2013
Offline
57
#3
lealhost:
В вашем скрипте нет ошибок.
Возможно, есть символические ссылки на файл, вот и пишет два раза. :)

Соглашусь, например при использовании ISPMANAGER есть два файла php.ini, но с одной inode (жесткая ссылка) вида

/var/www/php-bin/user/php.ini

/var/www/user/data/php-bin/php.ini

Garin33
На сайте с 31.08.2009
Offline
169
#4

unreturned, lealhost большое спасибо, как раз ispmanager, проблема решена.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий