shell中没有添加#!/bin/sh的话,系统会按哪种sh执行,是否为默认sh,并且如何查看默认sh

如题所述

"#!/bin/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。
如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell。
=================

echo $SHELL //查看当前默认shell
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-10
按默认的执行,但是不同的shell,一些命令不一样,所以还是带上好

echo $SHELL

cat /etc/shells

linux系统本回答被网友采纳

shell中没有添加#!\/bin\/sh的话,系统会按哪种sh执行,是否为默认sh,并且...
"#!\/bin\/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell。=== echo $SHELL \/\/查看当前默认shell

#!\/bin\/bash
!\/bin\/sh 表示本脚本由\/bin\/路径的sh程序来解释...跟命令行下~\/bin\/sh Scriptname效果相同...但是#不是用来表示注释的吗?难道这里的#不是这个意思?不同的地方,#有不同的意思 就好比c++里面用“\/\/”来注解 vb里面用“'”注解一样 dns里面用“;”来注解 shell的开头那个#不是用来注解的 ...

linux shell编程脚本第一行为什么一定要用"#!\/bin\/sh",不写行不行?这...
!\/bin\/sh为指定你运行脚本的shell类型,是bash,ksh还是其它,一般系统有固定的shell,不定这行也能执行,只是为了规范写上的。还有比如你执行的是perl程序,就可以写#!\/bin\/perl.

shell脚本第一行为“#!\/bin\/sh”,是什么意思?
\/usr\/local\/bin\/xshell。如果没有这种第一行的明确指定,不同的Unix类操作系统会根据其默认设置来选择shell解释器。例如,Unix系统通常默认使用sh,而Linux系统常常倾向于使用bash。因此,这一行在脚本中起到了至关重要的作用,它确保了操作系统知道如何正确解析和执行你的脚本。

shell脚本第一行为“#!\/bin\/sh”,是什么意思?
!\/bin\/ksh 之类的 或者, 你自己定义一种脚本语言, 再自己写个解释器去执行它, 比如说叫 xshell, 放在 \/usr\/local\/bin 下, 你的脚本第一行就应该是 !\/usr\/local\/bin\/xshell 如果没有这样定义的第一行, 不同 unix 类操作系统会用默认 shell 来解释脚本, 如 unix 往往是 sh, linux 往往...

如何运行shell命令?第一行为什么是# !\/bin\/sh?
\/bin\/bash”,其中#表示该行是注释,叹号“!”告诉shell运行叹号之后的命令并用文件的其余部分作为输入,也就是运行\/bin\/bash并让\/bin\/bash去执行shell程序的内容。执行shell程序的方法有三种:1、sh shell程序文件名 这种方法的命令格式为:bash shell程序文件名这实际上是调用一个新的bash命令解释程序...

linux系统\/bin\/bash和\/bin\/sh的区别
在Linux系统中,\/bin\/bash和\/bin\/sh是两个不同的shell解释器。\/bin\/sh是基础版本,它遵循POSIX标准,当脚本中出现错误时,会立即停止脚本执行。而\/bin\/bash则是\/bin\/sh的增强版,它默认不开启POSIX模式,即使脚本出错,仍会继续执行后续代码。使用#!\/bin\/bash --posix与#!\/bin\/sh效果相同,意味着...

linux的shell编程中#!\/bin\/sh和$bash是什么意思
! \/bin\/sh 是指此脚本使用\/bin\/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径。$bash $表示系统提示符,$ 表示此用户为普通用户,超级用户的提示符是#。bash是shell的一种,是linux下最常用的一种shell。$bash的意思是执行一个子shell,此子shell为bash。要注意,在...

...一个.sh的shell脚本的方法一样吗?我用\/bin\/sh -c可以
执行脚本时,不要加-c sh test.sh 这样就可以执行一个脚本 当执行系统的命令时,才会加-c 两个不能同时存在。

linux #!\/bin\/sh 是什么意思
\/bin\/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。(#! \/bin\/sh 是指此脚本使用\/bin\/sh来解释执行,#!是特殊的表示符,其后面跟的是解释此脚本的shell的路径)如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell.如果脚本被...

相似回答