0

インポート リストを一意にするために、Xcode 用の Automator シェル スクリプトを作成しようとしています。トリックは、私はそれらをソートしたくないということです。そこで、ほぼ完璧に機能するこの perl マジックを見つけました。

# Print all unique lines
perl -ne 'print unless $a{$_}++'

唯一の問題は、 #imports 間のすべての空のスペースを削除することです。機能ごとにインポートをグループ化するのが好きです...

//Model  
#import This.h
#import That.h

// ViewControllers
#import ThisView.h
#import ThatView.h

…ということで、スペースを確保したいと思います。

スペースを無視する上記の呪文のバリエーションはありますか? そうでない場合、これに影響を与える別の方法はありますか?

4

2 に答える 2

5

このようなもの:

perl -ne 'print unless /\S/ && $a{$_}++'

「行に空白以外の文字が含まれていて、ハッシュにすでに存在していない限り、印刷してください」

于 2013-02-09T10:02:41.130 に答える
3

インポートのみに影響を与えたい場合、おそらく最も簡単な解決策は、重複排除を で始まる行に制限すること#です。

perl -ne 'print unless /^\s*#/ && $a{$_}++'
于 2013-02-09T10:39:26.500 に答える