如何导入shell的库源文件

发布于 2024-12-12 22:38:25 字数 551 浏览 0 评论 0原文

这是我个人 shell 的“头文件”tool.h

#!/bin/echo Warnning! this libiary must be scourced in file!
#ostype(): define the system type in val OSTYPE
ostype(){
    osname=`uname -s`
echo $osname
}
ostype

当我像 ./tool.h 一样直接调用它时,它会打印“#!/bin/echo”之后的第一行这

是我的问题:如何通过另一个 shell 脚本文件在 'tool.h' 中调用此函数“ostype”,其第一行是 #!/bin/bash

我不知道如何像在Javascript中导入Jquery插件一样导入“头文件”。

<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>

Here's my personal shell's 'head file' tool.h

#!/bin/echo Warnning! this libiary must be scourced in file!
#ostype(): define the system type in val OSTYPE
ostype(){
    osname=`uname -s`
echo $osname
}
ostype

When I call it directly like ./tool.h it prints the first line that after "#!/bin/echo"

And here is my question: How can I call this function "ostype" in 'tool.h' by anoter shell script file with it's first line #!/bin/bash?

I don't know how to import the "head file" just like import Jquery plug-in in Javascript.

<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

甜心小果奶 2024-12-19 22:38:25

您可以source它(假设它位于同一目录中的另一个文件中):

source tool.h

You can source it (assume this is in another file in the same directory):

source tool.h
牵强ㄟ 2024-12-19 22:38:25

您不应该使用 .h 作为后缀,可能应该使用 .sh (如果您使用的是 C shell 衍生版本,则可能应该使用 .csh )。

根据您的 shell,您可以使用“dot”命令(POSIX、Bourne、Korn、Bash)shell 或 source 命令(C Shell、Bash):

. tool.sh

source tool.sh

这些命令都会读取脚本(在找到如果名称中没有斜杠,则通过类似 PATH 的搜索将其作为当前 shell 环境的一部分(而不是在子 shell 中运行它)。这意味着点脚本所做的更改会在调用 shell 中生效 - 这在定义函数时很重要。

You should not use .h as the suffix and probably should use .sh (or possibly .csh if you're using a C shell derivative).

Depending on your shell, you might use the 'dot' command (POSIX, Bourne, Korn, Bash) shells, or the source command (C Shell, Bash):

. tool.sh

source tool.sh

These both read the script (after finding it via a PATH-like search if there's no slash in the name) as part of the current shell environment (as opposed to running it in a sub-shell). This means that changes made by the dotted script take effect in the calling shell - which is important when defining functions.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文