有没有什么Bash家当客观上比其他大多数应用更好?
#!/usr/bin/env bash#!/bin/bash#!/bin/sh#!/bin/sh -我很清楚地回忆起很久以前的一次听说,在最后添加一个破折号可以防止有人将命令传递给你的脚本,但却无法找到任何细节.
说我有以下文件:
buggy_program:
#!/bin/sh
echo "wops, some bug made me exit with failure"
exit 1
Run Code Online (Sandbox Code Playgroud)
Makefile文件:
file.gz:
buggy_program | gzip -9 -c >$@
Run Code Online (Sandbox Code Playgroud)
现在如果我输入make,file.gz即使buggy_program退出非零状态,GNU make也会很乐意构建.
在bash中set -o pipefail,如果管道中至少有一个程序出现故障,我可以做一个失败的管道退出.GNU make中有类似的方法吗?或者一些不涉及临时文件的解决方法?(这里gzipping的原因正是为了避免一个巨大的临时文件.)