Языки сценариев: Макс. Длина строки

#python #perl #bash #line #interpreter

#python #perl #bash #строка #интерпретатор

Вопрос:

Я написал скрипт, который хранит цифровые подписи в двоичных файлах и файлах скриптов. Этот вопрос касается только скриптов: в настоящее время все эти подписи сохраняются в одной единственной строке (комментарии), такой как:

 #!/usr/bin/perl
print "Hello"
print " Worldn"
#Signature:ASDASG13412sdflsal4sf etc........
  

Примером является Perl, но это сделано для всех языков сценариев (Perl, Python, shell-скрипты и т.д.)
Итак, теперь мой вопрос таков: могу ли я попасть в беду, если длина строки, содержащей подпись, слишком велика? Как интерпретатор справляется с этим? Если да, то каков максимальный. длину строки, которую я могу использовать?

Комментарии:

1. Я только что из любопытства попробовал 500 тыс. символов в одной строке на Python без проблем. Вероятно, вам следует просто попробовать это самостоятельно для всех упомянутых языков.

Ответ №1:

Большинство языков сценариев будут иметь достаточно большие ограничения, если действительно у них есть формальное ограничение на длину строк. POSIX рекомендует минимум 2048.

Какой длины ваши подписи? Скорее всего, не более 1024…in в таком случае я действительно не стал бы беспокоиться. Если это не работает для какого-либо языка, вы должны сообщить об ошибке, а не о чем-либо другом.

Комментарии:

1. Спасибо за ответ. Длина моих подписей зависит от того, какая длина ключа RSA используется. Я только что протестировал 4096-байтовый ключ (максимально возможный), который создает длину строки примерно 1,1 K

Ответ №2:

Perl также не имеет фиксированной максимальной длины строки, кроме как обусловленной использованием памяти.

Ответ №3:

В Python у вас не должно возникнуть никаких проблем с длиной строки, пока у вас достаточно памяти. В PHP вы можете быть ограничены объемом памяти, который разрешено использовать интерпретатору PHP (задается в php.ini)