[uanog] экранировать выражение
Volodymyr Litovka
doka at funlab.cc
Fri Jul 2 20:14:50 EEST 2021
Мне чё та лень придумывать аналог этого выражения в отсутствие psql, но
попробуй декомпозировать длинную строку в два выражения - как минимум
можно будет сузить диапазон поиска проблемы:
max_conn=$(psql -qtAX -c "SELECT current_setting('max_connections')") \
psql -c "ALTER SYSTEM SET work_mem = $(awk '/MemTotal/ {print
int(($2)*0.25/$max_conn)}' /proc/meminfo)"
On 02.07.2021 18:37, VASYL MELNYK wrote:
> Всем привет
>
> Дилетантсткий вопрос, раньше просто наваял бы скрипт на баше да и не
> думал, но тут надо именно одной строкой
>
> Есть такое выражение, вычисляет work_mem в зависимости от количества
> оперативки и макс коннекшин и прописывает в конфиг постгреса
>
> вот такая команда под юзером postgres выполняется
> psql -c "ALTER SYSTEM SET work_mem = $(awk '/MemTotal/ {print
> int(($2)*0.25/'$(psql -qtAX -c "SELECT
> current_setting('max_connections')")')}' /proc/meminfo)"
>
> Но если из судо это делать
> sudo -iu postgres psql -c "ALTER SYSTEM SET work_mem = $(awk
> '/MemTotal/ {print int(($2)*0.25/'$(psql -qtAX -c "SELECT
> current_setting('max_connections')")')}' /proc/meminfo)"
>
> , то выдается ошибка, надо как эту команду экранировать, а я уже
> использовал одинарные кавычки и двойные в выражении и ума не приложу
> как это выражение экранировать.
>
>
> _______________________________________________
> uanog mailing list
> uanog at uanog.kiev.ua
> https://mailman.uanog.kiev.ua/mailman/listinfo/uanog
--
Volodymyr Litovka
"Vision without Execution is Hallucination." -- Thomas Edison
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.uanog.kiev.ua/pipermail/uanog/attachments/20210702/ab8b447f/attachment.html>
More information about the uanog
mailing list