
次の行のようなものを使用してctagを生成しています。
find -iname '*.[hc]' -exec ctags -a --sort=no {} +
その結果、タグはソートされません。このために私は使用しています
sort -u -o tags tags
気になりました。これはすべてで完了できますかfind
?つまり、あらゆる目的find
で使用するように指示できます。--sort=no
しかし、最後に、ctagsが呼び出されたときはいつですか--sort=yes
?
現在の方法で十分ですが(とにかくctags
内部的に呼び出されますsort -u -o $TAGFILE $TAGFILE
)、これが可能かどうか疑問に思います。
答え1
find
私はそれが不可能であると確信しています。-exec {}
古典的なprint-to-を使用している場合xargs
(ファイル名にスペース、ドル記号、引用符などのシェル特殊文字が含まれていない場合、またはそれらを保護するのが困難な場合)、最後のgroup =行を識別して「修正」するすることができます:
find -iname pattern | xargs echo ctags -a --sort=no | sed '$s/sort=no/sort=yes/' | sh
しかし、暗黙的に尋ねるように実行できますが、なぜ面倒なのですかsort
?