2011-06-23 7 views
1

私は変数にファイルパスのリストを持っています。私はこのリストの各ファイルを新しい場所にコピーしたいと思います。問題は、私がmakefileにはとても新しいことです。私は何か動作するように苦労しています。私の試みは次のようになりましたが、私は何をしようとしているのかを示してくれることを望みます。Makefileは新しいディレクトリにあるファイルのリストを収集します

FILES = a/b/file c/d/file e/.../file etc... 
copyfiles: 
     for file in $(FILES); do \ 
      cp $$file newDir/$(notdir $$file); \ 
     done 

答えて

4

あなたは、私はそれを試してみました

FILES = a/b/file c/d/file e/.../file etc... 
copyfiles: 
    cp $(FILES) newDir 

行うことができ、それが動作します。

globbingはコマンドではなく、シェルによって行われることに注意してください。 cpは引数としてファイルのリストをとり、最後の引数で指定された場所にすべてのファイルをコピーします。 cp *.cppと入力すると、すべてのcpプログラムの引数として、現在のディレクトリ内のファイルは.cppで終わります。

関連する問題