繁体   English   中英

是否存在在bash中命名“私有函数”的约定?

[英]Is there a convention for naming 'private functions' in bash?

是否存在在bash中命名私有函数的约定? 我有一个带有一些私有函数的bash模块,想知道我是否应该用下划线开始它们的名字。 到目前为止,我还没有看到任何惯例。

对于它的价值,Red Hat的/etc/init.d/functions脚本使用双下划线。

# __umount_loop awk_program fstab_file first_msg retry_msg umount_args
# awk_program should process fstab_file and return a list of fstab-encoded
# paths; it doesn't have to handle comments in fstab_file.
__umount_loop() {
    # ...
}

# Similar to __umount loop above, specialized for loopback devices
__umount_loopback_loop() {
    # ...
}

# __proc_pids {program} [pidfile]
# Set $pid to pids from /var/run* for {program}.  $pid should be declared
# local in the caller.
# Returns LSB exit code for the 'status' action.
__pids_var_run() {
    # ...
}

# A sed expression to filter out the files that is_ignored_file recognizes
__sed_discard_ignored_files='/\(~\|\.bak\|\.orig\|\.rpmnew\|\.rpmorig\|\.rpmsave\)$/d'

我不知道任何正式的特定于bash的约定,但是使用下划线启动私有标识符是一种相当普遍的与语言无关的约定(我在从C到Perl到Java到shell脚本的任何事情上遇到过它)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM