У меня есть программа, которая должна читать и записывать в файл конфигурации (свойств) из сценария Perl. Я использую Config :: Simple для операций чтения и записи.
Мой вопрос здесь, я могу читать и писать в файле свойств.
Однако, когда я пытаюсь обновить одно из значений конфигурации в значении свойства, он добавляет управляющие символы (\ n), а также хочет удалить заголовок по умолчанию, созданный методом "cfg-write ()". Я пробовал искать форумы и упоминал API, а не информацию. Может ли кто-нибудь пролить свет?
Когда я пытаюсь вызвать функцию даты / времени, она не добавляет никаких дополнительных символов. Однако, когда я пытаюсь выполнить команду SVN, он добавляет дополнительный символ. Я попытался использовать команду печати на консоли, она отлично работает без управляющего символа
my $buildDate = strftime('%d/%m/%y %H:%M:%S',localtime);
my $rev = `svn info --show-item revision`;
my $cfg = Config::Simple->import_from('temp.properties', \my %Config);
$cfg->param("builddate", $buildDate);
$cfg->param("revision", $rev);
$cfg->write() or die $cfg->error();
Недвижимость-файл:
; Config::Simple 4.58
; Thu Apr 25 10:59:10 2019
version=Build Automation
revision=14794\\n
builddate=25/04/19 10:59:10
Ожидаемые результаты:
1) Необходимо удалить управляющий символ (\ n) в параметре конфигурации ревизии
2) cfg-write или cfg-autosave () записывает заголовок по умолчанию в файл, который я хотел бы удалить / игнорировать
Фактические результаты:
1) Добавлен дополнительный управляющий символ (\ n)
2) Заголовок по умолчанию добавлен в файл свойств