首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash命令在cronie执行时异步运行。

Bash命令在cronie执行时异步运行。
EN

Unix & Linux用户
提问于 2018-04-15 13:07:09
回答 1查看 254关注 0票数 0

我有一个bash脚本来备份我的raspberry pi,在运行备份命令之后,我的pc应该被关闭。当我通过命令行运行脚本时,这是可行的。但是,当cronie执行它时,它会立即跳到关机命令,而不是等待备份完成。

我能做些什么?

Shell脚本:

代码语言:javascript
复制
#!/bin/bash

ssh root@192.168.x.x dd if=/dev/mmvblk0 bs=1M | gzip -c > /path/to/backup/$(date -I) && systemctl poweroff
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2018-04-15 17:58:16

ssh似乎只是在后台运行。实际上,ssh无法立即连接和退出,这也使gzip立即退出。但是,由于管道的退出代码是最后一个命令的退出代码(除非在前面使用set -o pipefail ),所以关闭命令被执行。

如果您想使用不存在于相应用户默认文件中的SSH密钥,则需要使用-i选项告诉D5有关密钥文件的信息:

代码语言:javascript
复制
ssh -i /home/user/.ssh/id_rsa root@192.168.x.x dd if=/dev/mmvblk0 bs=1M
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/437893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档