findで内容が見つからないディレクトリがあったため、findに次のエイリアスを指定しました。
alias find='find -not -path "*.sync*"'
問題は今find -depth
。
答え1
-not
名前付き演算子には存在しませんfind
。そんな意味でしたか!
?-path
多くの実装に見られる拡張ですが、find
すべてではありません。
主な問題は、おそらくすべてのパス名パラメータをfind
コマンドラインに最初に表示する必要があり、エイリアスを展開した後にパス名タイプパラメータを追加すると、パラメータfind
が誤った順序で表示されることです。
find
ケースによっては、除外したいパスの前後にさらにパラメータを追加する必要があるため、問題に対する一般的な解決策はありません。
あなたは試すことができます:
find() {
path=$1
shift
command find "$1̈́" ! -path '*.sync' "$@"
}
ただし、パスタイプパラメータは1つだけ許可されます。