5

非表示でないファイル(つまり、名前が で始まらないファイルcp) のみをコピーするために、シェル (私の場合は MinGW) で実行する良い方法はありますか?.

.svnフォルダとその内容を除外したいです。

4

3 に答える 3

9

*シェルは、ドットで始まる名前を含むように展開されないため、次のようになります。

cp * /target/directory

.svnそれはディレクトリをコピーしません。

それが問題でない場合 (たとえば、隠しファイルを含むサブディレクトリを再帰的にコピーしようとしている場合)、何をしているのかを明確にしてください。

于 2012-08-07T19:49:26.260 に答える
1

ls 単独では、非表示でないファイルのみが表示されます。echo $fileコマンドを cp コマンドに 置き換えると、動作するはずです。

for file in `ls`; do echo $file; done

このようなものはうまくいきます:

for file in `ls`; do cp $file /path/to/desitination; done

これを行うにはもっと複雑な方法がありますが、あなたのニーズにはこれで十分に適しているようです。

**免責事項: ファイル名にスペースが含まれている場合、これは機能しません。

修正するには、スター ワイルドカードを使用するだけです。実行echo *すると、これが隠しファイルに展開されないことがわかります。ジョナサン・レフラーに感謝

于 2012-08-07T19:48:12.027 に答える
1

ls を使用して、隠しファイル以外のすべてのファイルを一覧表示し、コピーすることができます。

cp $(ls) destination
于 2012-08-07T19:48:33.477 に答える