广告
返回顶部
首页 > 资讯 > 操作系统 >Shell特殊变量(Shell $#、$*、$@、$?、$$)的使用
  • 402
分享到

Shell特殊变量(Shell $#、$*、$@、$?、$$)的使用

Shell特殊变量Shell$#$*$@$?$$ 2022-06-04 23:06:46 402人浏览 泡泡鱼
摘要

上节我们讲到了 $n,它是特殊变量的一种,用来接收位置参数。本节我们继续讲解剩下的几个特殊变量,它们分别是:$#、$*、$@、$?、$$。 shell 特殊变量及其含义 变量

上节我们讲到了 $n,它是特殊变量的一种,用来接收位置参数。本节我们继续讲解剩下的几个特殊变量,它们分别是:$#、$*、$@、$?、$$。

shell 特殊变量及其含义

变量 含义
$0 当前脚本的文件名。
$n(n≥1) 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是 $1,第二个参数是 $2。
$# 传递给脚本或函数的参数个数。
$* 传递给脚本或函数的所有参数。
$@ 传递给脚本或函数的所有参数。当被双引号" "包含时,$@ 与 $* 稍有不同,我们将在《Shell $*和$@的区别》一节中详细讲解。
$? 上个命令的退出状态,或函数的返回值,我们将在《Shell $?》一节中详细讲解。
$$ 当前 Shell 进程 ID。对于 Shell 脚本,就是这些脚本所在的进程 ID。

下面我们通过两个例子来演示。

1) 给脚本文件传递参数
编写下面的代码,并保存为 test.sh:


#!/bin/bash
echo "Process ID: $$"
echo "File Name: $0"
echo "First Parameter : $1"
echo "Second Parameter : $2"
echo "All parameters 1: $@"
echo "All parameters 2: $*"
echo "Total: $#"

运行 test.sh,并附带参数:

[mozhiyan@localhost demo]$ . ./test.sh Shell linux
Process ID: 5943
File Name: bash
First Parameter : Shell
Second ParLIIgRUameter : Linux
All parameters 1: Shell Linux
All parameters 2: Shell Linux
Total: 2

2) 给函数传递参数

编写下面的代码,并保存为 test.sh:


#!/bin/bash
#定义函数
function func(){
  echo "Language: $1"
  echo "URL: $2"
  echo "First Parameter : $1"
  echo "Second Parameter : $2"
  echo "All parameters 1: $@"
  echo "All parameters 2: $*"
  echo "Total: $#"
}
#调用函数
func java Http://c.biancheng.net/java/

运行结果为:
Language: Java
URL: http://c.biancheng.net/java/
First Parameter : Java
Second Parameter : http://c.biancheng.net/java/
All parameters 1: Java http://c.biancheng.net/java/
All parameters 2: Java http://c.biancheng.net/java/
Total: 2

到此这篇关于Shell特殊变量(Shell $#、$*LIIgRU、$@、$?、$$)的使用的文章就介绍到这了,更多相关Shell特殊变量内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

--结束END--

本文标题: Shell特殊变量(Shell $#、$*、$@、$?、$$)的使用

本文链接: https://www.lsjlt.com/news/21303.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Shell特殊变量(Shell $#、$*、$@、$?、$$)的使用
    上节我们讲到了 $n,它是特殊变量的一种,用来接收位置参数。本节我们继续讲解剩下的几个特殊变量,它们分别是:$#、$*、$@、$?、$$。 Shell 特殊变量及其含义 变量 ...
    99+
    2022-06-04
    Shell特殊变量 Shell $# $* $@ $? $$
  • Shell特殊变量Shell $#、$*、$@、$?、$$用法是什么
    这篇文章主要介绍“Shell特殊变量Shell $#、$*、$@、$、$用法是什么”,在日常操作中,相信很多人在Shell特殊变量Shell $#、$*、$@、$、$用法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希...
    99+
    2023-06-09
  • 如何正确的使用Shell特殊变量
    本篇文章为大家展示了如何正确的使用Shell特殊变量,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Shell 特殊变量及其含义变量含义$0当前脚本的文件名。$n(n≥1)传递给脚本或函数的参数。n ...
    99+
    2023-06-06
  • Shell全局变量、局部变量与特殊变量的具体使用
    目录1、全局变量(环境变量):2、局部变量(本地变量):3、关于局部变量的其它一些问题4、Shell的特殊变量:变量类型:全局变量(环境变量)和局部变量(本地变量)环境变量可以在定义它们的shell及其派生出来的任意子进...
    99+
    2023-05-06
    Shell全局变量 Shell局部变量 Shell特殊变量
  • Shell编程中的特殊变量之位置变量介绍
    1、$0 获得当前脚本的文件名,包括路径。 #写一个测试脚本 vim test.sh #内容如下 dirname$0 basename$0 #执行一下 bash$(pwd)/test.sh ...
    99+
    2022-06-04
    变量 位置 Shell
  • Shell编程之特殊变量和扩展变量详解
    特殊变量 在Shell中的特殊变量主要分别两种位置参数变量、状态变量两种。 位置参数变量 Shell中的位置参数变量主要是指0、0、1、$#等,主要用于从命令行、函数或脚本执行等地方传递参数。详细说明如下所示: ...
    99+
    2022-06-04
    shell特殊变量 shell变量 shell定义变量
  • Shell常用的特殊位置参数变量说明
    $0    获取当前执行的shell脚本的文件名,如果执行脚本包含了路径,那么就包括脚本路径$n    获取当前执行的shell脚本的第n个参数值,n=1..9,当n为0时表示脚本...
    99+
    2023-06-06
  • Shell编程中特殊变量的示例分析
    这篇文章给大家分享的是有关Shell编程中特殊变量的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。$0 $# $n-->$[1..9] $* $@在shell中存在着一些特殊而又重要的变如:$1 $...
    99+
    2023-06-09
  • 怎么在Shell中实现特殊变量和扩展变量
    本篇文章为大家展示了怎么在Shell中实现特殊变量和扩展变量,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。特殊变量在Shell中的特殊变量主要分别两种位置参数变量、状态变量两种。位置参数变量Shel...
    99+
    2023-06-09
  • Shell编程中的特殊变量之进程状态变量介绍
    进程状态变量 1、$$获取当前shell的进程号(PID) 2、$!执行上一个指令的PID 3、$?获取执行上一个命令的返回值(0为成功,非零为失败,这个很常用) 4、$_在此之前执行的命令或脚本的...
    99+
    2022-06-04
    变量 进程 状态
  • 如何理解Shell编程中的特殊变量之位置变量
    本篇内容介绍了“如何理解Shell编程中的特殊变量之位置变量”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!$0 获得当前脚本的文件名,包括路...
    99+
    2023-06-09
  • 如何理解Shell编程中的特殊变量之进程状态变量
    本篇内容介绍了“如何理解Shell编程中的特殊变量之进程状态变量”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!进程状态变量$$获取当前she...
    99+
    2023-06-09
  • Shell脚本中的位置变量参数(特殊字符)实例讲解
    $# : 传递到脚本的参数个数 $* : 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过 9个 $$ : 脚本运行的当前进程 ID号 $! : 后台运行的最后一个进程的进程 ID号...
    99+
    2022-06-04
    变量 脚本 实例
  • 如何在Shell中使用特殊字符
    这期内容当中小编将会给大家带来有关如何在Shell中使用特殊字符,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、;分号连续运行命令# ifdown eth0;ifup et...
    99+
    2023-06-09
  • Linux中如何使用shell下的特殊字符
    这篇文章给大家分享的是有关Linux中如何使用shell下的特殊字符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、快速在目录之间切换。在Linux操作系统的文本模式下,在目录之间进行切换都需要通过命令来完成。...
    99+
    2023-06-17
  • shell中冒号的特殊用法分享
    : ${VAR:=DEFAULT} 当变量VAR没有声明或者为NULL时,将VAR设置为默认值DEFAULT。如果不在前面加上:命令,那么就会把${VAR:=DEFAULT}本身当做一个命令来执行,报错是肯...
    99+
    2022-06-04
    冒号 shell
  • Shell中的变量使用小结
    变量的定义,只能以字母和下划线开始,区分大小写,可以包含数字 字母下划线.详见官方手册 [root@svn shell_example]# yourname='Linux' [root@svn shel...
    99+
    2022-06-04
    小结 变量 Shell
  • Shell中的变量使用总结
    本篇内容主要讲解“Shell中的变量使用总结”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell中的变量使用总结”吧!变量的定义,只能以字母和下划线开始,区分大小写,可以包含数字 字母下划线...
    99+
    2023-06-09
  • Python中的特殊变量名
    1.以单一下划线开头的变量名(_X)不会被from module import *语句导入。 2.前后有下划线的变量名(__X__)是系统定义的变量名,对解释器有特殊意义。 3.以两个下划线开头,但结尾没有两个下划线的变量名(__X)是类的...
    99+
    2023-01-31
    变量名 Python
  • Bash脚本中特殊变量$0的使用
    目录1. 显示脚本的名称和路径2. 比较脚本的名称和路径3. 脚本自身的调试和测试结论在 Bash 脚本中,$0 是一个特殊变量,它代表当前脚本的路径和名称。这个变量用于表示脚本自身,它是 Bash 环境中的一个重要组成...
    99+
    2023-05-06
    Bash 特殊变量$0 Bash $0
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作