2011-06-21 83 views
0

HI在執行下面讓文件的代碼我得到一個錯誤說,cp命令給錯誤make文件

Signing File 3E0022__.FPG 
cp: missing destination file ******Error during cp command 
Try `cp --help' for more information.**** 

這是我的腳本:

for fpga in $(LIST_A); do\ 
      link=1;\ 
      for disFpga in $(LIST_B); do\ 
        if [ "$$fpga" = "$$disFpga" ] ;then\ 
          echo "Signing File $$fpga";\ 
          cp $($(fpga)) $(PKG)/$(fpga);\ ===> * Error at this Point*    
           link=0;\ 
        fi;\ 
      done;\ 
        if [ $$link -eq 1 ] ;then echo "Linking Done for $$fpga File";\ 
        fi;\ 
    done; 

好心幫我解決此問題

感謝

阿倫

+0

$($(fpga))解析爲空字符串。 – sehe

回答

0

我認爲$($(fpga))是錯誤的。它應該是$(fpga)

+0

我已經嘗試過,但它不工作,在這裏我想添加一個評論,如果我使用'foreach'cp命令將使用相同的代碼,但如果我使用循環它不會工作。我認爲循環是shell構造和foreach構造。 –

+0

這是一個shell腳本嗎?如果是這樣,變量替換應該是'$ {fpga}'而不是'$(fpga)' – JeremyP

+0

不,我正在gnu make文件上做這個腳本。 –

1

你得到變量夾雜了外殼變量。這將做我認爲你想要的:

cp $$fpga $(PKG)/$$fpga;\