linux - shell 脚本没有错误地执行
问题描述
我编写了一个 shell 脚本将文件从 Windows 目录复制到远程 Linux 机器。我正在使用 cygwin 运行脚本。该脚本被执行而没有任何错误。我pscp
用来复制文件,但文件没有被复制。安装腻子并设置环境变量。
在不放入.sh
文件的情况下,该pscp
命令会复制文件。
#!/bin/bash
logFile=/cygdrive/e/Automated/Po_transfer/po_filesfileTransfer.log
d=`date +%d-%m-%Y`
t=$(date +"%T")
cd /cygdrive/e/Automated/Po_transfer/
FileName=`ls -tr|grep PO*_BV.csv >> $logFile`
pscp -pw abcd $FileName user@xxx.yy.zz.qq:/home/ckp/po
if [ $? = 0 ];
then
echo "$d $t $FileName transferred to Asics Factory successfully" >> $logFile
fi
该脚本必须将文件复制到 Linux 机器上的目标目录,但控制台显示:
./PO_Transfer.sh
PuTTY Secure Copy client
Release 0.70
Usage: pscp [options] [user@]host:source target
pscp [options] source [source...] [user@]host:target
pscp [options] -ls [user@]host:filespec
解决方案
推荐阅读
- spring - JdbcTemplate 中的多租户
- elasticsearch - 如果仅使用存在过滤器,则使用哪种 Elasticsearch 字符串数据类型?
- python - 如何将 Pandas 行的值排列到单独的数据框中?
- javascript - 运行 Jasmine 测试未找到课程
- php - 如何在 Windows 10 中添加 PHP 扩展?
- email - 是否有允许以编程方式创建地址的电子邮件服务提供商?
- visual-studio-code - XDebug (2.9.8) 无法在 VSCode (PHP 7.4.11) 中找到断点
- windows - Powershell 为 RunAs 提供凭据
- android - 如何在视图模型类和前台服务之间传递数据
- firebase - 未处理的异常:NoSuchMethodError:在 null 上调用了方法“[]”。尝试调用:[](“is_ordered”)。检查空字段 Firebase