特定のファイル名を持つファイルを返すために使用したいと思いますfind
。この場合_
。
使えることを学びました
find . ! '(' -name '_*' ')'
しかし、古いパス名なしでファイル名を返したいと思います。basename
bashでcmdを使用してこれを行う方法はありますか?
また、これを行うことができる他のコマンドも開いていますls
。
ベストアンサー1
はい、-を使用してジョブにbasename
パラメータとして渡すことができます。-exec
find . ! -name '_*' -exec basename {} \;
(演算子優先順位の問題がないため、グループ化角括弧は必要ありません。)
または、GNUがある場合、find
その-printf
操作は一般的なファイル名のフォーマット指定子を提供します。
%f File's name with any leading directories removed (only the last element).
だから
find . ! -name '_*' -printf '%f\n'