スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
再帰的に ファイルの中身にある文字列が含まれてるか調べる
use strict; と書かれているかファイル名を表示させる

Perlなら、
use strict;
use File::Find;

find(
     sub {
          return if ! -f $_;
          open my $f, "$_";
          while(<$f>){
            if( $_ =~ /use strict;/ ){
                print $File::Find::name, "\n"; 
                last;
            }
          }
          close $f;
     },
     '.'
   );       


grepコマンドを使うなら、
$ grep -r 'use strict' . | sort | uniq | awk -F: '{ print $1 }'




.pl と書かれたソースだけからfindコマンドを使って見つけるなら、
$ find . -name '*.pl' | xargs grep 'use strict' | awk -F: '{ print $1 }' | sort | uniq
スポンサーサイト
コマンドの意味
mv    カット アンド ペースト
cp     コピー アンド ペースト
find    ファイル検索
grep    ファイル中身検索
今まででよく打ったコトを調べる
.bash_historyからトップ10を抽出してみよう。

$ cat .bash_history | sort | uniq -c | sort -nr | head -10
 120 vi aaa
 117 perl aaa
  31 vi dd
  28 perl dd
  21 vi p
  20 perl p
  20 ls
  15 bash b
  13 vi b
  13 cd_today 

うは、ブログ書く為のちっこいソース書いてるだけだ。
maxを求めるいろいろな方法
なんか色々書いてみたくなった。

Perl
use List::Util qw(max);
print max map { chomp $_; $_ } <DATA>

__DATA__
1
3
2


シェル
$ echo "
1
3
2" | sort -nr | head -1


シェル
$ echo '1 2 3' | tr ' ' '\12' | sort | tail -1
リダイレクトとか
リダイレクトとか標準入力が ということはひとまず置いておいて、
少し整理しよう

シェルにおいて、

<  ファイルからの入力
>  ファイルへの出力
|   出力を後続のコマンドへの入力に変える

と覚えれば、ひとまずよいのではないだろうか?

< と > はファイル用なんだよ
| は、コマンド用





知識がこれでものたりないなら、
> は 1> の略だ。標準出力だからな。
ブログ検索

プロフィール

ビンゴ中西
Perlが好きである。
プログラミング言語のほとんどは独学。独学の過程で多くのプログラム仲間にも色々教わりました。

FC2カウンター

カレンダー

09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

ブロとも申請フォーム

この人とブロともになる

| ホーム | 次のページ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。