我有一组脚本,它们都来自一些共同的上下文:
DEFAULT_PAGINATION=''
ownContext=$HOME/.config/exploitation/context.sh
if [ -f "$ownContext" ]; then
# shellcheck source=$HOME/.config/exploitation/context.sh
. "$ownContext"
fi
这样任何人都可以覆盖默认配置:一些位置,帮助标志,在这种情况下,分页。
例如,要自动重定向到更少,我尝试过:
# DEFAULT_PAGINATION is the default pagination tool (a program)
# OUTPUT_PAGINATION_FILE acts as an include guard, or contains a filename
if [ -n "$DEFAULT_PAGINATION" ] && [ -z "$OUTPUT_PAGINATION_FILE" ]; then
paginate() {
$DEFAULT_PAGINATION "$OUTPUT_PAGINATION_FILE" # paginate tempfile
}
trap paginate exit
OUTPUT_PAGINATION_FILE=$(mktemp)
export OUTPUT_PAGINATION_FILE
exec 1<&- # close stdout
exec 1<>"$OUTPUT_PAGINATION_FILE" # redirect stdout to a temp file
fi
在另一个上下文文件中,export DEFAULT_PAGINATION=less
但它不起作用。任何想法 ?
另外,该解决方案不允许export DEFAULT_PAGINATION="less +F"
即时重定向。有解决方案吗?
PSbash
标签是故意的