如何在shell脚本中将命令放入nohup?

时间:2017-11-03 06:43:46

标签: bash shell nohup

我正在尝试将shred命令放在nohup for shell脚本中,一旦脚本运行,它必须接受输入并在nohup模式下在设备上运行shred操作。问题是当我添加nohup命令脚本没有退出并在后台运行命令时,我也试图在完成碎片操作后发送成功和失败邮件。 到目前为止我尝试了什么:

nohup shred -n 2 "device name" > success.out 2>failure.out
if [$? -eq 0]
then 
    mail -s "success" -a success.out "EmailID" <.
    exit 0
else 
    mail -s "failure" -a failure.out "EmailID" <.
    exit 1
fi

我收到成功的电子邮件附件n =但是附件是不可读的格式,还有其他方法吗?

1 个答案:

答案 0 :(得分:-1)

脚本不会退出并在后台运行命令”。

你不要告诉脚本背景它。添加&amp ;.

所以:

DELIMITER $$
DROP FUNCTION IF EXISTS `usp_GetEmployeeNo`$$
CREATE FUNCTION `usp_GetEmployeeNo`(i_last_name VARCHAR(30))
RETURNS INT
BEGIN

    declare return_val int default 0;  /* local variable */

    SELECT emp_no 
      into return_val  /* <-- */
    FROM employees 
    WHERE last_name = i_last_name;

    return return_val;
END$$
DELIMITER ;

会这样做。