gpt4 book ai didi

unix 命令行使用 . (点)与没有

转载 作者:行者123 更新时间:2023-12-03 12:02:47 27 4
gpt4 key购买 nike

在 unix 命令行中,通过简单地输入程序名称来执行程序与通过输入 . (点)后跟程序名称?例如。:

runme

对比
. runme

最佳答案

. name获取名为 name 的文件进入当前 shell 。所以如果一个文件包含这个

A=hello

然后,如果您获取该信息,则之后您可以引用名为 A 的变量。其中将包含你好。但是如果你执行这个文件(给定适当的执行权限和 #!/interpreter 行),那么这样的事情就不会起作用,因为脚本设置的变量和其他东西只会影响它运行的子shell。

获取二进制文件没有任何意义:Shell 不知道如何解释二进制文件(请记住,它会将出现在该文件中的内容插入到当前 shell 中 - 很像 C 中古老的 #include <file> 机制)。例子:
head -c 10 /dev/urandom > foo.sh; . foo.sh # don't do this at home!
bash: �ǻD$�/�: file or directory not found

当然,执行二进制文件确实很有意义。所以通常你只想命名你想要执行的文件,在特殊情况下,比如 A=hello上面的情况,你想获取一个文件。

关于unix 命令行使用 . (点)与没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/922651/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com