mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-16 16:23:30 +00:00
Read opts file in perl instead of 'cat file | perl' to avoid occasional 'cat: write error: Broken pipe'.
This commit is contained in:
@@ -209,10 +209,13 @@ parse_options() {
|
|||||||
_parse_pod() {
|
_parse_pod() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
|
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -220,7 +223,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -228,7 +231,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -237,6 +240,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -211,10 +211,13 @@ parse_options() {
|
|||||||
_parse_pod() {
|
_parse_pod() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
|
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -222,7 +225,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -230,7 +233,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -239,6 +242,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
16
bin/pt-pmp
16
bin/pt-pmp
@@ -252,10 +252,13 @@ parse_options() {
|
|||||||
_parse_pod() {
|
_parse_pod() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
|
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -263,7 +266,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -271,7 +274,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -280,6 +283,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
16
bin/pt-sift
16
bin/pt-sift
@@ -250,10 +250,13 @@ parse_options() {
|
|||||||
_parse_pod() {
|
_parse_pod() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
|
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -261,7 +264,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -269,7 +272,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -278,6 +281,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
16
bin/pt-stalk
16
bin/pt-stalk
@@ -263,10 +263,13 @@ parse_options() {
|
|||||||
_parse_pod() {
|
_parse_pod() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
|
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -274,7 +277,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -282,7 +285,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -291,6 +294,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -218,10 +218,13 @@ parse_options() {
|
|||||||
_parse_pod() {
|
_parse_pod() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
|
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -229,7 +232,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -237,7 +240,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -246,6 +249,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -230,10 +230,13 @@ _parse_pod() {
|
|||||||
# default=foo
|
# default=foo
|
||||||
# That's the spec for --string-opt2. Each line is a key:value pair
|
# That's the spec for --string-opt2. Each line is a key:value pair
|
||||||
# from the option's POD line like "type: string; default: foo".
|
# from the option's POD line like "type: string; default: foo".
|
||||||
cat "$file" | PO_DIR="$PO_DIR" perl -ne '
|
PO_FILE="$file" PO_DIR="$PO_DIR" perl -e '
|
||||||
BEGIN { $/ = ""; }
|
$/ = "";
|
||||||
next unless $_ =~ m/^=head1 OPTIONS/;
|
my $file = $ENV{PO_FILE};
|
||||||
while ( defined(my $para = <>) ) {
|
open my $fh, "<", $file or die "Cannot open $file: $!";
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
|
next unless $para =~ m/^=head1 OPTIONS/;
|
||||||
|
while ( defined(my $para = <$fh>) ) {
|
||||||
last if $para =~ m/^=head1/;
|
last if $para =~ m/^=head1/;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^=item --(\S+)/ ) {
|
if ( $para =~ m/^=item --(\S+)/ ) {
|
||||||
@@ -241,7 +244,7 @@ _parse_pod() {
|
|||||||
my $file = "$ENV{PO_DIR}/$opt";
|
my $file = "$ENV{PO_DIR}/$opt";
|
||||||
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
open my $opt_fh, ">", $file or die "Cannot open $file: $!";
|
||||||
print $opt_fh "long:$opt\n";
|
print $opt_fh "long:$opt\n";
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
if ( $para =~ m/^[a-z ]+:/ ) {
|
if ( $para =~ m/^[a-z ]+:/ ) {
|
||||||
map {
|
map {
|
||||||
@@ -249,7 +252,7 @@ _parse_pod() {
|
|||||||
my ($attrib, $val) = split(/: /, $_);
|
my ($attrib, $val) = split(/: /, $_);
|
||||||
print $opt_fh "$attrib:$val\n";
|
print $opt_fh "$attrib:$val\n";
|
||||||
} split(/; /, $para);
|
} split(/; /, $para);
|
||||||
$para = <>;
|
$para = <$fh>;
|
||||||
chomp;
|
chomp;
|
||||||
}
|
}
|
||||||
my ($desc) = $para =~ m/^([^?.]+)/;
|
my ($desc) = $para =~ m/^([^?.]+)/;
|
||||||
@@ -258,6 +261,7 @@ _parse_pod() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
last;
|
last;
|
||||||
|
}
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user