我有两个shell脚本,一个是checking_file.sh,第二个是mailing.sh。checking_file.sh
#!/bin/bash
filepath="/home/documents/hello.txt"
if [ -f "$filepath" ]; then
echo "file exists"
else
echo "file not exists"
fi
mailing.sh
#!/bin/bash
output=$(/home/documents/checking_file.sh)
if [ "$output" = "file not exists" ]; then
echo "trigger mail to developer"
else
echo "file is available in time no mail needed"
fi
mailing.sh 最后应该执行。两者是不同的脚本。
我在www.example.com中使用了chmod u+r+ X/home/documents/checking_file.shmailing.sh,但mailing.sh应该最后执行。mailing.sh应该读取checking_file.sh,它不应该执行checking_file.sh shell
1条答案
按热度按时间7xzttuei1#
根据OP的评论:
mailing.sh
不应调用checking_file.sh
,但应“读取”checking_file.sh
的输出checking_file.sh
将其输出写入文件…checking_file.sh
以将其输出写入文件mailing.sh
读取上述文件的内容对OP的当前代码进行最小的更改:
注意事项:
mailing.sh
添加一些逻辑,以验证checking_file.out
是否确实存在mailing.sh
添加一些逻辑来删除/重命名checking_file.out
,以便重复运行mailing.sh
不会再次处理相同的checking_file.out
解决OP关于不修改
checking_file.sh
的评论/问题……在不修改
checking_file.sh
的情况下,我们可以让调用将所有输出定向到一个文件,例如: