【发布时间】:2017-02-22 17:31:57
【问题描述】:
filecount=0
if [ -e "$filename$ext" ]
then
ls -l $filename$ext
scp $filename$ext t2flex@ccfilesvr:/home/t2flex/.
mv $filename$ext $filename"_"$d$done
echo $filename$ext secure copied to ccfilesvr
filecount=$((filecount+1))
else
echo "$filename$ext Not found in $path."
fi | tee >> $logfile
# -----------------------------------------------------
if [ -e "$filenam1$ext" ]
then
ls -l $filenam1$ext
scp $filenam1$ext t2flex@ccfilesvr:/home/t2flex/.
mv -f $filenam1$ext $filenam1"_"$d$done
echo "$filenam1$ext secure copied to ccfilesvr"
filecount=$((filecount+1))
else
echo "$filenam1$ext Not found in $path."
fi
# ----------------------------------
echo "Number of files to transfer into ccfilesvr: $filecount" >> $logfile
if [ $filecount -ge 1 ]
then
echo "Files ready to upload to T2. Entering ccfilesvr..."
ssh t2flex@ccfilesvr . t2flexXfer.shl
else
echo "No files to upload. Entering ccfilesvr to download charges."
ssh t2flex@ccfilesvr . t2flexXfer.shl
fi
echo "Number of files to transfer into ccfilesvr: $filecount">> $logfile
下面是上面的输出。我只给出让我有理由退休的代码部分!
-rw-r--r-- 1 oracle dba 455132 Feb 21 14:14 CC_T2_PERSON.txt
CC_T2_PERSON.txt secure copied to ccfilesvr
-rw-r--r-- 1 oracle dba 107314 Feb 21 14:14 CC_T2_CAMPUSBOX.txt
CC_T2_CAMPUSBOX.txt secure copied to ccfilesvr
Number of files to transfer into ccfilesvr: **0**
No files to upload.
为什么我的计数器总是显示为“0”?
【问题讨论】:
-
我尝试将上面的“0”加粗,星号出来了。无视**。也无视| tee $logfile ...为了便于阅读,我想删除它,但忘记了。
-
tee命令(或者更确切地说是用于将其输入连接到if语句的输出的管道)似乎是问题所在。您正在子流程中增加filecount。 -
增加文件计数后添加调试回显。
-
好的,谢谢。在增加文件计数后,我将添加一个调试回显。我不会通过管道发送脚本...我将使用重定向 >>.
-
完美!!!谢谢!文件数是:1 文件数是:2 要传输到 ccfilesvr 的文件数:2 准备上传到 T2 的文件。进入 ccfilesvr...
标签: bash variables counter addition