0
我在使用nc傳輸文件時奇怪的情況很長時間,我使用下面的bash腳本將文件從A機器傳輸到B機器,腳本似乎沒問題,文件正在傳輸到B機器,但是文件的大小爲0字節並且沒有任何內容(它真的包含在機器A中),那麼我第二次運行我的腳本,這時機器B確實包含內容,我可以知道哪個部分我的腳本導致這個問題?百萬感謝您的幫助!使用nc傳輸文件時的空文件
#!/bin/bash
IPADDRSTR="$1"
COUNT=0
for x in $IPADDRSTR
do
#server
IPERRSTR[$COUNT]=$(sshpass -p pass ssh -o StrictHostKeyChecking=no -p 22 [email protected]$x '$(/usr/bin/nc -l -p1234 > /root/a.txt)&' > /dev/null 2>&1 | echo -n $?)
if [ ${IPERRSTR[COUNT]} -eq "0" ]
then
nc $x 1234 < ./a.txt
echo "done"
fi
COUNT=$((COUNT+1))
done
您是否嘗試過簡化它,例如,使用'scp'來複制文件? – jfs 2014-09-19 08:51:28
我認爲你正在迴應後臺進程的退出狀態......這不是'nc'的退出狀態。 – 2014-09-19 08:51:55
另外,爲什麼你的'ssh'命令在'$()'裏面? – 2014-09-19 08:56:23