linux shell编程脚本第一行为什么一定要用"#!/bin/sh",不写行不行?这个"!"是什么意思?

如题所述

#!/bin/sh为指定你运行脚本的shell类型,是bash,ksh还是其它,一般系统有固定的shell,不定这行也能执行,只是为了规范写上的。还有比如你执行的是perl程序,就可以写#!/bin/perl.
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-05
#! /bin/sh 是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面跟的是解释此脚本的shell的路径
如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell.如果脚本被编写为在Kornshell ksh中运行,而默认运行shell脚本的为C shell csh,则脚本在执行过程中很可能失败。
第2个回答  2021-07-16
表示此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面跟的是解释此脚本的shell的路径,不写的话应该不会出错。可查看《Linux就该这么学》了解更多Linux。本回答被网友采纳
第3个回答  2012-12-05
表示用来解释此脚本的程序是"/bin/sh"
不写的话应该不会出错。
但是考虑到移植问题,还是写上比较好。
第4个回答  2012-12-05
这个是告诉系统,应该调用哪个东西来运行他。
是特殊格式。
相似回答