Я написал скрипт bash, а ниже приведен пример фрагмента, который выдает ошибку «Список аргументов слишком длинный».
param1=$1
param2=$2
'set ${param1} "${param2}"'
Я знаю, что размер param2 огромен (около 15 МБ и может быть больше)).Я прочитал несколько постов о ARG_MAX и разбивке на более мелкие компоненты.
getconf ARG_MAX
67108864
Здесь размер ARG_MAX может легко вместить что-то размером не менее 15 МБ.Поэтому я не уверен, что именно здесь не так.Кроме того, я не уверен, смогу ли я разбить эту команду на более мелкие блоки.Это всего лишь одна команда, которая устанавливает целое значение за одну попытку.
Я также выполнил приведенную ниже команду для проверки пределов данных:
ulimit -d
unlimited
Здесь мы также имеем неограниченный размер.Кто-нибудь знает, как именно я могу увеличить предел ОС для запуска этих больших команд?Я использую CentOS Linux версии 7.5.1804 (Core) с ядром: 4.18.9.