Написание сценария оболочки для отслеживания и сжатия файла журнала

Поставьте строку в кавычки, и вам нужно будет только поставить обратную косую черту в кавычки. Если вы цитируете дважды, вам нужно избегать обоих типов кавычек.

Обновление: Терминал Gnome требует тройного цитирования. Просто дважды экранируйте одинарные кавычки в строке и используйте одинарные кавычки вокруг вставленной строки. Вам также необходимо установить обратную косую черту в исходной строке.

Доказательство: я использовал следующий сценарий Perl:

#!/usr/bin/perl
use strict;
use warnings;
use feature qw{ say };

chomp( my $msg = <> );
$msg =~ s/\\/\\\\/g;           # Quis backslashies backslashes tandem?
$msg =~ s/'/'\\''/g for 1, 2;  # Replace ' by '\'' twice.
$msg =~ s/"/\\"/g;             # Backslash double quotes.
system q(gnome-terminal -e 'bash -c "echo '\\'') . $msg . q('\\''; exec bash"');
0
14.05.2019, 05:59
1 ответ

tail -fдолжен быть интерактивным, кроме timeoutвы должны попробоватьtail -100(100 или что-то еще ), чтобы поймать последние строки.

основная часть будет

tail -100 /whatever/sample.log | gzip > /whatever/sample.log.gz
2
28.01.2020, 02:30

Теги

Похожие вопросы