Как напечатать вывод в тот же файл, из которого вы читаете в perl? - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть скрипт perl, который читает файл, изменяет нужную вещь и затем печатает вывод файла на консоли. Я хочу, чтобы вывод обновлялся в том же файле, откуда он собирает данные.

Как это можно сделать?

1 Ответ

3 голосов
/ 26 февраля 2020

Вы можете использовать переключатель -i или специальную переменную $^I.

perl -i.backup -pe 's/change me/something else/'

или

#!/usr/bin/perl
use warnings;
use strict;

$^I = '.backup';
while (<>) {
    ...
    print;
}

Обратите внимание, что он работает только для специального дескриптора файла *ARGV используется алмазным оператором. В любом случае, он создает новый файл за сценой.

См. perlrun и perlvar .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...