例如,我想编写一个 bash shell 脚本来使用rsync
. 我应该把它作为一个独立的脚本文件(backup.sh
)还是将它包装在一个函数中(backup
)?作为一个脚本文件,我可以运行它bash backup.sh
。作为一个功能,我可以将它放在一个文件中,foo.sh
并在我登录时获取它,然后我可以简单地backup
作为命令运行来备份我的文件。问题是,这两种策略的优缺点是什么?
或者更一般地说,我想知道,在什么情况下,我应该将功能实现为独立的 Shell 脚本文件还是作为 shell 函数?
我的一些想法:我知道一些图形会话(例如 KDE、Gnome 等)在登录时会使用不同的文件。如果想在图形启动的应用程序中使用 shell 功能(例如单击图标打开 emacs),可能会引起一些混乱。但我更喜欢将它们实现为 shell 函数并将它们组合到文件中,我认为这些文件整洁且组织良好。
还有其他想法或建议吗?