shell脚本中/bin/bash的作用引号与括号的使用小结

 更新时间:2023年12月13日 10:32:20   作者:Hubert丶冰羽  
shell脚本通常第一句是#!/bin/bash,在很多情况中,如果没有设置好这一行,那么该程序很可能无法执行,#!/bin/bash是指此脚本使用/bin/bash来解释执行,本文给大家介绍shell脚本中/bin/bash的作用,引号与括号的使用,感兴趣的朋友一起看看吧

shell脚本通常第一句是#!/bin/bash,在很多情况中,如果没有设置好这一行,那么该程序很可能无法执行,因为系统无法判断该程序需要使用什么shell来执行

通俗点讲,#!/bin/bash: 是指此脚本使用/bin/bash来解释执行。其中,#!是一个特殊的表示符,后面紧跟着解释此脚本的shell路径。bash只是shell的一种,还有很多其它shell,比如:sh,csh,ksh,tcsh等等。

Linux Shell中有三种引号,分别为双引号(" ")、单引号(' ')以及反引号(` `)。

其中双引号对字符串中出现的$、''、`和\进行替换;单引号不进行替换,将字符串中所有字符作为普通字符输出,而反引号中字符串作为shell命令执行,并返回执行结果。具体含义如下:

双引号(" "):在双引号中,除了$, '', `和\以外所有的字符都解释成字符本身。

单引号(' '):在单引号中所有的字符包括特殊字符($,'',`和\)都将解释成字符本身而成为普通字符。

反引号(` `):在反引号中的字符串将解释成shell命令来执行。

反引号是老的用法,$()是新的用法,推荐使用$()。使用方式和反引号一致,如下:

DATE1=`date`
DATE2=$(date)

通常情况下两种形式的变量替换是等价的,但是两者还有一点区别,反引号``不支持嵌套而$()则支持嵌套,如计算目录下第一个文件的行数:

lines=$(wc -l $(ls | sed -n '1p'))
echo $lines

输出结果为:

89 anaconda-ks.cfg

此外,$() 仅在 Bash Shell 中有效,而反引号可在多种 Shell 中使用。

到此这篇关于shell脚本中/bin/bash的作用,引号与括号的使用的文章就介绍到这了,更多相关shell 引号与括号的使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • shell中if条件判断的实现

    shell中if条件判断的实现

    本文主要介绍了shell中if条件判断的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • awk区间取值的例子

    awk区间取值的例子

    awk区间取值的例子,匹配某一区间内的值,有需要的朋友不妨参考下
    2013-02-02
  • 使用bash shell删除目录中的特定文件的3种方法

    使用bash shell删除目录中的特定文件的3种方法

    这篇文章主要介绍了使用bash shell删除目录中的特定文件的3种方法,分别为扩展模式匹配符、GLOBIGNORE 变量和find 命令,需要的朋友可以参考下
    2014-06-06
  • 一天一个shell命令 linux文本内容操作系列-awk命令详解

    一天一个shell命令 linux文本内容操作系列-awk命令详解

    awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理
    2016-06-06
  • Linux 中的Logwatch命令

    Linux 中的Logwatch命令

    在Linux系统操作中,logwatch能够对系统log报告进行分析,用于Linux日志的处理,下面小编给大家详细介绍下Linux 中的Logwatch命令,感兴趣的朋友一起看看吧
    2017-09-09
  • shell脚本中一键部署zookeeper集群服务的方法

    shell脚本中一键部署zookeeper集群服务的方法

    Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目,这篇文章主要介绍了shell脚本一键部署zookeeper集群服务的方法,需要的朋友可以参考下
    2022-05-05
  • 使用AWK在shell中生成日历小程序

    使用AWK在shell中生成日历小程序

    这篇文章主要为大家详细介绍了如何使用AWK在shell中生成日历小程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpreter: No such file or directory

    bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpret

    这篇文章主要介绍了bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpreter: No such file or directory,需要的朋友可以参考下
    2014-10-10
  • Linux 自动化构建工具make/Makefile的使用详解

    Linux 自动化构建工具make/Makefile的使用详解

    这篇文章主要介绍了Linux 自动化构建工具 make/Makefile,要如何编译.c文件,关键就在于Makefile是怎么写的,下面我们主要介绍这两者的使用,需要的朋友可以参考下
    2022-04-04
  • Linux Shell脚本中获取本机ip地址方法

    Linux Shell脚本中获取本机ip地址方法

    这篇文章主要介绍了Linux Shell脚本中获取本机ip地址方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10

最新评论