bash中的$_与dash脚本

我需要移植一个短脚本bashdash(即shDebian的10下)。它包含以下行:

chown root:www-data /etc/nginx/conf.d && chmod 775 $_

这现在失败了,因为$_保留了上一个命令的最后一个参数(即/etc/nginx/conf.d),bash但现在使用 non-interactive 保留了不同的值dash。作为另一个例子,从bash -c 'echo 1 2 && echo $_'和 的输出dash -c 'echo 1 2 && echo $_'也不同。

形成上述类型的“简洁”语句的典型方法是什么dash(不诉诸更专业的命令,例如install)?

回答

写个函数就行了。

chownmod () { chown "$1" "$3" && chmod "$2" "$3"; }

并用以下内容替换该行。

chownmod root:www-data 775 /etc/nginx/conf.d


以上是bash中的$_与dash脚本的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>