非表示でないファイル(つまり、名前が で始まらないファイルcp
) のみをコピーするために、シェル (私の場合は MinGW) で実行する良い方法はありますか?.
.svn
フォルダとその内容を除外したいです。
*
シェルは、ドットで始まる名前を含むように展開されないため、次のようになります。
cp * /target/directory
.svn
それはディレクトリをコピーしません。
それが問題でない場合 (たとえば、隠しファイルを含むサブディレクトリを再帰的にコピーしようとしている場合)、何をしているのかを明確にしてください。
ls 単独では、非表示でないファイルのみが表示されます。echo $file
コマンドを cp コマンドに 置き換えると、動作するはずです。
for file in `ls`; do echo $file; done
このようなものはうまくいきます:
for file in `ls`; do cp $file /path/to/desitination; done
これを行うにはもっと複雑な方法がありますが、あなたのニーズにはこれで十分に適しているようです。
**免責事項: ファイル名にスペースが含まれている場合、これは機能しません。
修正するには、スター ワイルドカードを使用するだけです。実行echo *
すると、これが隠しファイルに展開されないことがわかります。ジョナサン・レフラーに感謝
ls を使用して、隠しファイル以外のすべてのファイルを一覧表示し、コピーすることができます。
cp $(ls) destination