欲しい探すGNU以外の環境の一部のファイル
- 現在のディレクトリのみ
- 拡張機能付き*.ext1そして*.ext2、
- しかし、名前1.*または名前2.*
次のコマンドは機能しますが、シェルは拡張されてい./*
ます探す広範なファイルとディレクトリのリストを得ることができます。
find ./* -prune \( -name '*ext1' -o -name '*ext2' \) -a ! \( -name 'name1*' -o -name 'name2*' \)
修正する:
私はAIXで働いています。-最大深さオプション。
ベストアンサー1
そしてfind
:
find . ! -name . -prune \
\( -name '*.ext1' -o -name '*.ext2' \) \
! \( -name 'name1.*' -o -name 'name2.*' \)
usingは-prune
GNU標準と同じです-maxdepth
。ここでは、 をfind
除くどのディレクトリにも入らないように指示します.
。
! -name .
GNU標準と同様に、選択から除外されます。 GNUの場合。.
! -name . -prune
-mindepth 1 -maxdepth 1
-mindepth 1
find . \( -name . -o -prune \)
を使用すると、zsh
次のこともできます。
set -o extendedglob
print -rC1 -- *.(ext1|ext2)~(name1|name2).*(ND)
~
AND NOT演算子であり、(D)
ドットファイルを含みます。