App-expskip

 view release on metacpan or  search on metacpan

expskip  view on Meta::CPAN

  my $cmd = '' ;
  do { 
    no warnings 'experimental::smartmatch' ;
    $cmd = "seq 20 | $0"           when '20' ; # -T 20 で "expskip" に seq 20 の結果を与える。
    $cmd = "seq 20 | $0 -f5"       when 'f5' ; # -T f5 で "expskip -f5" をシミュレート
    $cmd = "seq 20 | $0 -p0"       when 'p0' ; # -T p0 で "expskip -p0" をシミュレート
    $cmd = "$0 <(seq 4) <(seq 10)" when 'm2' ; # -T m2 で、複数のファイルを与える。
    $cmd = "seq 1e6 | $0"          when '1m' ; # -T 1m で "expskip" に 100万までの数を与える。
    $cmd = "seq 1e5 | $0 -e0"      when 'e0' ; # -T e0
    $cmd = "seq 1e5 | $0 -f5"      when 'f5' ; # -T f5
    $cmd = "seq 100 | tr 0-9 A-H | $0 -: 'yellow green bold italic'" ; # -T ac で、数字以外と行番号の色づけを同時にテスト。
    $cmd = "seq 1e7 | $0"          when 'E7' ; # -T E7 で 1000万までの数を与える。なお、seq 1e7が1e7+1の数を与える。
  } for $arg ; 
  $cmd = join " " , $cmd , @ARGV [ $A0 .. $#ARGV ] ;  # <-- @ARGV に'や"があると思ったように動作しないであろう。
  say STDERR YELLOW BOLD ">  $cmd" ;
  system $cmd ;
  exit ;
}

getopts "::2:b:e:f:tp:zA:B:T:",\my%o ; # <-- -T以外のオプションを読み取る。(ただし動作検証のため、Tはここに残した。)
eval "use PerlIO::gzip;1" or die "Can't import PerlIO::gzip despite -z instruction. ($Script)\n" if $o{z} ; 

expskip  view on Meta::CPAN

   -b N :次の説明の 10,100,1000,.. の数の部分を変更して N のべき乗になる。さらに「」内の数の内N以下のみに限定。(base)
   -p 1 : キリの良い数を 1, 10, 100, 1000 .. 行に限定する。(-bの設定で別の数のべき乗に変更可能。)
   -p 2 : キリの良い数を 1, 2, 4, 8,  10, 20, 40, 80 .. と、「1,2,4,8」の1倍,10倍,100倍.. とする。
   -p 7 : キリの良い数を 「1, 1.5, 2, 3, 5, 7 」の1倍,10倍,100倍.. とする。
   -p 8 : キリの良い数を 「1, 1.5, 2, 3, 5, 8 」の1倍,10倍,100倍.. とする。
   -p 9 : キリの良い数を 上1桁以外が全て0の数と見なす(「1,2,3,4,5,6,7,8,9」の1倍,10倍,100倍..)。
   -p 0 : 上記の動作をしない。次の -e で指定される部分のみを出力。
   -e num : 入力全体の最初と最後も num 行出力するようにする。未指定であれば num = 2。0も指定可能。 (edge)
   -f num : 開始行の指定 (from)

   -: [0|colorname] : 行番号のみ色を着色する指定。blue や "bold yellow"などを指定可能。0 を指定すると行番号を出力しない。
   -B num きりの良い数の何行前から表示するか。連続表示に用いる。(grepコマンドの -B と同様な動作)
   -A num きりの良い数の何行後まで表示するか。連続表示に用いる。(grepコマンドの -A と同様な動作)

   -2 0 : 「何行読んで何行出力したか」を標準エラー出力に出しているのを抑制する。
   -t : 出力時の時刻情報を 行頭に付加。
   -z : 入力が、gzipの形式で圧縮されていることを指定する。

  --help : この $0 のヘルプメッセージを出す。  perldoc -t $0 | cat でもほぼ同じ。
  --help opt : オプションのみのヘルプを出す。opt以外でも options と先頭が1文字以上一致すれば良い。



( run in 0.246 second using v1.01-cache-2.11-cpan-5dc5da66d9d )