如何防止直接bash脚本执行并仅允许从其他脚本使用?

igr*_*igr 3 bash

我有一个包含常用功能的脚本,包含在我的其他脚本中:

. ~/bin/fns
Run Code Online (Sandbox Code Playgroud)

由于我的~/bin路径在PATH上,有没有办法阻止用户fns从命令行执行(通过从脚本返回消息),但允许其他脚本包含此文件?

(Bash> = 4)

Axe*_*xel 5

只需删除可执行位chmod -x . ~/bin/fns.它在源头时仍然可以工作,但你不能再用它的名字(意外地)调用它.