我刚刚安装了 Intel Parallel Studio,现在想要设置系统变量,以便终端可以找到编译器等。
在安装指南告诉我运行一些包含的设置脚本或将它们包含在我的 bash 配置文件中等。这很酷。
但它总是说,例如:
使用编译器之前设置环境变量。您可以使用source命令来执行shell脚本compilervars。嘘或编译器变量。西施。
然而它并没有解释这两个变体之间的区别。我也无法在网上其他地方找到这两个文件扩展名的任何比较。
我唯一可以推断的是这些.csh
文件是 Mac OSX 特定的,从以下行:
在 Linux* 和 OS X* 上,该文件是一个名为compilervars.sh 或compilervars.csh 的shell 脚本
在运行任何操作之前我想了解更多细节。
答案1
.sh
表示 Bourne shell ( sh
) 或 Bourne Again shell ( bash
) 的脚本,通常是其前身的超集。
.csh
表示 C shell ( csh
) 的脚本,作为一个 shell,它在很大程度上相似,但一旦您开始执行比运行一系列静态命令更复杂的操作,就会显着不同。
这两种 shell 通常都可以在任何 POSIXy 环境中使用,而且实际上这两种 shell 都经常被预先安装,尽管bash
(及其表兄弟sh
)根据我的经验更加普遍。
我在上面说“指示性”,是因为文件扩展名的概念在技术上并不存在,并且没有语义或语法意义。一个文件可以被命名为script.steve
ordocumentation.exe
或,include.h
但实际上仍然是一个 shell 脚本。要获得更明确的确认,请查看文件的第一行。对于设计为直接执行的脚本,它应该以 shebang 行开头,该行以 octothorpe ( #
)、bang ( !
) 和应运行该脚本的可执行文件的路径开头。例如:
#!/usr/local/bin/bash
或者
#!/usr/bin/python3