Существует ли соглашение по именованию «частных функций» в bash? - PullRequest
12 голосов
/ 18 февраля 2010

Существует ли соглашение по именованию частных функций в bash? У меня есть модуль bash с некоторыми частными функциями, и мне интересно, стоит ли начинать их имена с подчеркивания. До сих пор я не видел никаких соглашений.

Ответы [ 2 ]

14 голосов
/ 18 февраля 2010

Для чего бы то ни было, скрипт /etc/init.d/functions в Red Hat использует двойное подчеркивание.

# __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'
4 голосов
/ 18 февраля 2010

Мне не известны какие-либо формальные соглашения, специфичные для bash, но запуск частных идентификаторов с подчеркиванием является довольно распространенным соглашением, не зависящим от языка (я сталкивался с ним при работе с C, Perl, Java и сценариями оболочки).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...