下面的代碼是腳本的一部分,我在其中合併不同目錄的文件。合併後,我將剩餘的文件複製到最終目錄中。 合併是工作正常,但複製文件時我正在在linux上:cp:源文件後缺少目標文件操作數
cp: missing destination file operand after `/users/abc/perl_scripts/temp_dir/b.cc'
Try `cp --help' for more information.
sh: line 1: /users/abc/perl_scripts/temp: is a directory
for $k(dir1) {
$flag=0;
for $j(@dir2) {
if("$k" eq "$j") {
&merge_gcov("$UERRC1/$k","$UERRC2/$k","$DATA_DIR/$k");
$flag=1;
last;
}
}
if($flag == 0) {
#print ">>>>>>>>>>>>> cp $UERRC1/$k $DATA_DIR/$k \n";
'cp $UERRC1/$k,$DATA_DIR`;
}
}
任何人可以幫助我解決這個...
您的縮進是可怕的。它看起來像你在任何地方使用全局變量。你使用'警告'和'嚴格'?不要用'&調用subs。你的'cp'行是一個語法錯誤(顯示你的真實代碼)。不要在無效的情況下使用反引號。發佈一個完整的程序來演示問題。 – melpomene
它只是腳本的一部分...完整的代碼太大了...問題是與cp命令不與子..我更正'cp $ UERRC1/$ k $ DATA_DIR'; – Nethra
在for循環參數中有'dir1'(裸句)是否是一個錯字?如果您沒有使用'use warnings',這將成爲循環運行一次的靜默錯誤,並且'$ k'是字符串'「dir1」'。 – TLP