非表示のファイルやフォルダーを含むフォルダーの内容全体を別のフォルダーにコピーする単純なbashスクリプトを作成しようとしていますが、特定の特定のフォルダーを除外します。どうすればこれを達成できますか?
1
findのようなものを想像します。-name *パイプでgrep / v "exclude-pattern"にパイプし、不要なものをフィルターにかけ、パイプでcpにコピーしてコピーを実行します。
—
i_am_jorf 2010
私はそのようなことをしようとしていましたが、パイプでcpを使用する方法を理解できませんでした
—
trobrock
これはおそらくスーパーユーザーに行くべきです。あなたが探しているコマンドはxargsです。パイプで接続された2つのタールのようなこともできます。
—
カイルバット
多分遅いとそれは質問に正確に答えませんが、ここにヒントがあります:ディレクトリの直接の子だけを除外したい場合、bashパターンマッチングを利用できます
—
。
cp -R !(dir1|dir2) path/to/destination
!(dir1|dir2)
パターンextglob
をオンにする必要があることに注意してください(shopt -s extglob
オンにするため)。