на языке drupal: grep and pipe - перечислите все выводы, чтобы избежать проблем с производительностью и производительностью сервера - PullRequest
2 голосов
/ 08 января 2012

Поскольку у меня есть серьезное предупреждение о производительности сервера при установке drupal-commons (это профиль установки), теперь я хочу уменьшить нагрузку на сервер.Почему - я получаю сообщение, когда пытаюсь установить drupal commons: слишком много файлов, откройте, это говорит!Ну, Drupal & modules (ab) использует слишком много файлов!Их целью является максимум 50 000 файлов и, возможно, 5000 каталогов, и это то, что они делают только для резервного копирования, поэтому это мой вопрос. Итак, мой вопрос: как я могу избавиться от всех этих глупых файлов перевода или чего-либо еще для крошечных мелких частей информации и ненужных подразделений;Как мне от них избавиться!

Справочная информация: Я ожидаю, что file_exists () во время установки (или цикла начальной загрузки) - самая дорогая встроенная функция PHP, измеренная как общаявремя, потраченное на вызов функции для всех вызовов в одном запросе.

Ну, теперь я пытаюсь избавиться от всех накладных расходов (особенно от файлов перевода, которые называются - po-файлы) - и ненужных файлов, которые содержатся в drupal-commons 6.x-2.3.чтобы запустить его на моем сервере.

я хочу избавиться от всех этих глупых файлов перевода или чего-нибудь еще для крошечных мелких частей информации и ненужных подразделений;

Как найти все эти .po-файлы рекурсивно - с GREP я думаю ... Примечание : я не знаю, где они сейчас!

linux-vi17:/home/martin/web_technik/drupal/commons_3_jan_12/commons-6.x-2.3/commons-6.x-2.3 # lsCHANGELOG.txt       
   ._.htaccess          install.php        modules       themes
._CHANGELOG.txt              ._includes           INSTALL.txt        ._profiles    ._update.php
COMMONS_RELEASE_NOTES.txt    includes             ._INSTALL.txt      profiles      update.php
._COMMONS_RELEASE_NOTES.txt  ._index.php          LICENSE.txt        ._robots.txt  UPGRADE.txt
COPYRIGHT.txt                index.php            ._LICENSE.txt      robots.txt    ._UPGRADE.txt
._COPYRIGHT.txt              INSTALL.mysql.txt    MAINTAINERS.txt    ._scripts     ._xmlrpc.php
._cron.php                   ._INSTALL.mysql.txt  ._MAINTAINERS.txt  scripts       xmlrpc.php
cron.php                     INSTALL.pgsql.txt    ._misc             ._sites
.directory                   ._INSTALL.pgsql.txt  misc               sites
.htaccess                    ._install.php        ._modules          ._themes
linux-vi17:/home/martin/web_technik/drupal/commons_3_jan_12/commons-6.x-2.3/commons-6.x-2.3 # grep .po

В любом случае, я хочу удалить все .po файлы одной командой bash - возможно ли это

, но подождите: прежде всего - я хочу выяснить все файлы - ия хочу перечислить это: - поскольку я знаю, что я получаю (/ или удаляю)

Ну, - все языковые переводы в Drupal названы .po -

как их найтиGREP?Как их перечислить - а потом - как их стереть !?

обновление: Я выполнил поиск с помощью

find  -type f -name "*.po"

.ну я нашел около 930 файлов.

Впоследствии я удалил их все с помощью

6.x-2.3 # find -type f -name "*.po" -exec rm -f {} \;

, и последний поиск с этим кодом

find  -type f -name "*.po"

не дал результатов, поэтому все po-файлы были стерты!

большое спасибо за подсказки.

привет ноль

Ответы [ 2 ]

2 голосов
/ 08 января 2012

Если вы хотите найти все файлы с именем *.po в каталоге с именем /some/directory, вы можете использовать find:

find /some/directory -type f -name "*.po"

Если вы хотите удалить их все подряд (выу вас есть резервные копии, не так ли?), затем добавьте действие к этой команде:

find /some/directory -type f -name "*.po" -exec rm -f {} \;

Замените /some/directory на соответствующее значение, и вы должны быть установлены.

1 голос
/ 10 января 2012

Проблема со «слишком большим количеством открытых файлов» обычно возникает не потому, что в файловой системе слишком много файлов, а потому, что существует ограничение на количество файлов, которые приложение или пользователь могут открыть одновременно. Эта проблема была рассмотрена на форумах drupal, например, просмотрите эту ветку, чтобы решить ее навсегда / красиво:

http://drupal.org/node/474152

Еще несколько ссылок об открытых файлах:
http://www.cyberciti.biz/tips/linux-procfs-file-descriptors.html
http://blog.thecodingmachine.com/content/solving-too-many-open-files-exception-red5-or-any-other-application

...