如何使用Expect命令在目录中下载所有文件

发布于 2025-02-08 04:23:53 字数 2444 浏览 1 评论 0原文

我正在使用期望命令自动下载一些文件。但是它没有下载所有文件,它仅在总共41个中下载16个文件。

这是自动运行的,我无法使用Interact

我缺少什么以及如何下载剩余的文件?

期待.dat

spawn scp -r [email protected]:/data/dcrm_int/ftp/out/20220407/*REP_ACCOUNT_20220407* /process/filesW/.
expect "*?assword*"
send "pps0\r"
expect eof
exit

执行期望文件

[12:08:34] data:~/filesW$ expect expect.dat
spawn scp -r [email protected]:/data/dcrm_int/ftp/out/20220407/*REP_ACCOUNT_20220407* /process/filesW/.
Authorized users only. All activity may be monitored and reported.
Password:
DWH_REP_ACCOUNT_20220407_000001.txt.gz           100%   41MB  72.3MB/s   00:00
DWH_REP_ACCOUNT_20220407_000001.vers            100% 3359     5.5MB/s   00:00
DWH_REP_ACCOUNT_20220407_000002.txt.gz           100%   41MB  63.9MB/s   00:00
DWH_REP_ACCOUNT_20220407_000003.txt.gz           100%   41MB  70.8MB/s   00:00
DWH_REP_ACCOUNT_20220407_000004.txt.gz           100%   40MB  65.4MB/s   00:00
DWH_REP_ACCOUNT_20220407_000005.txt.gz           100%   41MB  73.0MB/s   00:00
DWH_REP_ACCOUNT_20220407_000006.txt.gz           100%   41MB  69.9MB/s   00:00
DWH_REP_ACCOUNT_20220407_000007.txt.gz           100%   41MB  72.8MB/s   00:00
DWH_REP_ACCOUNT_20220407_000008.txt.gz           100%   41MB  66.5MB/s   00:00
DWH_REP_ACCOUNT_20220407_000009.txt.gz           100%   41MB  70.3MB/s   00:00
DWH_REP_ACCOUNT_20220407_000010.txt.gz           100%   41MB  63.7MB/s   00:00
DWH_REP_ACCOUNT_20220407_000011.txt.gz           100%   41MB  70.4MB/s   00:00
DWH_REP_ACCOUNT_20220407_000012.txt.gz           100%   41MB  65.9MB/s   00:00
DWH_REP_ACCOUNT_20220407_000013.txt.gz           100%   41MB  72.4MB/s   00:00
DWH_REP_ACCOUNT_20220407_000014.txt.gz           100%   38MB  62.3MB/s   00:00
DWH_REP_ACCOUNT_20220407_000015.txt.gz           100%   36MB  64.7MB/s   00:00
[12:11:14] data:~/filesW$

总文件

[12:14:47] data:~/filesW$ ssh [email protected] ls /data/dcrm_int/ftp/out/20220407/*REP_ACCOUNT_20220407* | wc -l
Authorized users only. All activity may be monitored and reported.
Password:
41

I am using the expect command to download some files automatically. But it does not download all the files, it only downloads 16 files out of a total of 41.

This runs automatically and I can't use interact

What am I missing and how do I download the remaining files?

expect.dat

spawn scp -r [email protected]:/data/dcrm_int/ftp/out/20220407/*REP_ACCOUNT_20220407* /process/filesW/.
expect "*?assword*"
send "pps0\r"
expect eof
exit

executing expect file

[12:08:34] data:~/filesW$ expect expect.dat
spawn scp -r [email protected]:/data/dcrm_int/ftp/out/20220407/*REP_ACCOUNT_20220407* /process/filesW/.
Authorized users only. All activity may be monitored and reported.
Password:
DWH_REP_ACCOUNT_20220407_000001.txt.gz           100%   41MB  72.3MB/s   00:00
DWH_REP_ACCOUNT_20220407_000001.vers            100% 3359     5.5MB/s   00:00
DWH_REP_ACCOUNT_20220407_000002.txt.gz           100%   41MB  63.9MB/s   00:00
DWH_REP_ACCOUNT_20220407_000003.txt.gz           100%   41MB  70.8MB/s   00:00
DWH_REP_ACCOUNT_20220407_000004.txt.gz           100%   40MB  65.4MB/s   00:00
DWH_REP_ACCOUNT_20220407_000005.txt.gz           100%   41MB  73.0MB/s   00:00
DWH_REP_ACCOUNT_20220407_000006.txt.gz           100%   41MB  69.9MB/s   00:00
DWH_REP_ACCOUNT_20220407_000007.txt.gz           100%   41MB  72.8MB/s   00:00
DWH_REP_ACCOUNT_20220407_000008.txt.gz           100%   41MB  66.5MB/s   00:00
DWH_REP_ACCOUNT_20220407_000009.txt.gz           100%   41MB  70.3MB/s   00:00
DWH_REP_ACCOUNT_20220407_000010.txt.gz           100%   41MB  63.7MB/s   00:00
DWH_REP_ACCOUNT_20220407_000011.txt.gz           100%   41MB  70.4MB/s   00:00
DWH_REP_ACCOUNT_20220407_000012.txt.gz           100%   41MB  65.9MB/s   00:00
DWH_REP_ACCOUNT_20220407_000013.txt.gz           100%   41MB  72.4MB/s   00:00
DWH_REP_ACCOUNT_20220407_000014.txt.gz           100%   38MB  62.3MB/s   00:00
DWH_REP_ACCOUNT_20220407_000015.txt.gz           100%   36MB  64.7MB/s   00:00
[12:11:14] data:~/filesW$

total files

[12:14:47] data:~/filesW$ ssh [email protected] ls /data/dcrm_int/ftp/out/20220407/*REP_ACCOUNT_20220407* | wc -l
Authorized users only. All activity may be monitored and reported.
Password:
41

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小糖芽 2025-02-15 04:23:53

期望EOF是计时。默认超时值为10秒,因此显然16个文件是在那个时候可以复制多少个文件。

解决方案:

send "pps0\r"
set timeout -1
expect eof

expect eof is timing-out. The default timeout value is 10 seconds, so apparently 16 files is how many can be copied in that time.

Solution:

send "pps0\r"
set timeout -1
expect eof
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文