当前位置: 首页 > 面试题库 >

如何在不运行Bash脚本的情况下进行语法检查?

干浩阔
2023-03-14
问题内容

是否可以不执行而检查bash脚本语法?

使用Perl,我可以运行perl -c 'script name'。bash脚本有任何等效命令吗?


问题答案:
bash -n scriptname

也许是一个明显的警告:这可以验证语法,但不会检查您的bash脚本是否尝试执行不在您的路径中的命令,例如ech hello而不是echo hello



 类似资料:
  • 问题内容: 我曾经用来检查Perl程序的语法,然后退出而不执行它。有没有等效的方法可以对Python脚本执行此操作? 问题答案: 您可以通过编译来检查语法:

  • 我有一个bash文件,从终端执行时可以正常工作。 注意:tensorflow\u p36是一个内置的conda环境,不需要从特定的目录调用。它可以从任何目录激活。我认为这是亚马逊深度学习AMIs的一个特点。 如果我用sudo运行这个bash脚本,它不会激活虚拟环境,并且在默认的python环境中工作。python文件只能在该虚拟环境中运行。 我在这里尝试了所有3个替代方案(rc.local、. c

  • 我正在开发一个spring启动应用程序并编写一些junit测试。 但我发现,当我运行任何测试时,tomcat也会启动,这使得这些测试非常缓慢,浪费了很多时间。 当我开发一个SpringMvc应用程序时,junit测试可以在不启动tomcat的情况下运行,这节省了很多时间。 所以,我想问它在那里无论如何要运行启动tomcat的springstart测试?

  • 我正在使用Java8 Nashorn来执行一个特定的先前同意的方法。我可以毫无问题地调用特定的方法。不过困扰我的一件事是,当我加载脚本时,它也会执行它。 例如,如果file.js包含一个print("hello world!")scriptEngine.eval(new FileReader("./file.js")将执行并打印hello world。我必须先这样做,然后才能调用我想要的特定方法。

  • 问题内容: 我有一个Node.js脚本所需的脚本,我想保持JavaScript引擎独立。 例如,我只想在Node.js下运行。如何执行此测试? 发布此问题时,我不知道Node.js模块功能是否基于CommonJS。 对于我给出的具体示例,一个更准确的问题是: 脚本如何判断是否已将其作为CommonJS模块使用? 问题答案: 通过寻求CommonJS支持 ,这是Underscore.js库的实现方式

  • 问题内容: 如何在 根用户 (具有所有权限)而不是 没人 用户(php默认用户)下从PHP运行bash脚本? 在sudo visudo之后,多数民众赞成在我的输出: 问题答案: 您可以使用sudo: 您应该允许在没有密码提示的情况下执行脚本。在控制台中运行,并将以下字符串添加到末尾: 您必须正确设置文件模式,以确保没有人可以修改此脚本并将危险内容放入该脚本(在根控制台中):