返回顶部
首页 > 资讯 > 服务器 >Shell中变量作用域的介绍与使用命令
  • 953
分享到

Shell中变量作用域的介绍与使用命令

变量命令作用 2022-06-04 21:06:51 953人浏览 薄情痞子
摘要

前言 众所周知shell 中的变量只作用于当前进程。如需在子进程中创建副本可使用 export 内建命令。 有时使用临时变量语法可以非常方便。 变量使用 任何地方都可以定义 Shell 变量,使用 =

前言

众所周知shell 中的变量只作用于当前进程。如需在子进程中创建副本可使用 export 内建命令。 有时使用临时变量语法可以非常方便。

变量使用

任何地方都可以定义 Shell 变量,使用 = 分隔变量名和变量值。= 前后不可出现空格,但变量的值可以留空。 读取变量需要添加$前缀。 变量作用域为当前进程。

例如:


url=Http://harttle.com
echo $url

export 到子进程

通常变量是不需要 export 的,但是当你需要把一个工作分割成若个小的任务, 分别用一个脚本来实现的时候,就需要把变量名传递给它们。 比如有一个 spider.sh 来获下载任意 URL 到临时目录:


#!/usr/bin/env bash
curl $url > $TMPDIR/$RANDOM.html

我们需要将当前脚本中的 url 传递给spider.sh:


export url=http://harttle.com
bash ./spider.sh
# 等价于(如果该文件有可执行权限的话)
./spider.sh

值得注意的是export只会在子进程中创建变量的副本,即spider.sh对它的改动不会体现在当前进程。

在当前进程执行脚本

使用 source 或 . 内建命令可以在当前进程执行另一个脚本,因此当前上下文的变量对该脚本是可见的。


url=http://harttle.com

source ./spider.sh
# 等价于
. ./spider.sh

临时设置环境变量

根据 Shell 语法,在一个简单命令前可以包含任意个赋值语句。这些变量赋值将会在执行命令前展开,等效于临时的环境变量。

A “simple command” is a sequence of optional variable assignments and redirections, in any sequence, optionally followed by Words and redirections, terminated by a control operator. ? Simple Commands, Shell Commands

例如下面命令可以把url变量传递给spider.sh:


url=http://harttle.com bash ./spider.sh

这是一条 简单命令,下面的多条命令或 组合命令:


url=http://harttle.com; bash ./spider.sh   # 两条命令,只作用于当前进程
url=http://harttle.com && bash ./spider.sh  # 组合命令,只作用于当前进程
export url=http://harttle.com; bash ./spider.sh # 两条命令,作用于父子进程

简单命令中的变量赋值也不作用于当前进程。例如下面的代码将会输出空行:


url=http://harttle.com echo $url

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程网的支持。

--结束END--

本文标题: Shell中变量作用域的介绍与使用命令

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

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

猜你喜欢
  • Shell中变量作用域的介绍与使用命令
    前言 众所周知Shell 中的变量只作用于当前进程。如需在子进程中创建副本可使用 export 内建命令。 有时使用临时变量语法可以非常方便。 变量使用 任何地方都可以定义 Shell 变量,使用 =...
    99+
    2022-06-04
    变量 命令 作用
  • JavaScript的闭包与变量作用域介绍
    这篇文章主要讲解了“JavaScript的闭包与变量作用域介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript的闭包与变量作用域介绍”吧!...
    99+
    2024-04-02
  • Shell脚本中的echo命令使用介绍
    目录引言1.显示普通字符串:2.显示转义字符3.显示变量4.显示换行5.显示不换行6.显示结果定向至文件7.原样输出字符串,不进行转义或取变量(用单引号)8.显示命令执行结果引言 Shell 的 echo 指令与 ph...
    99+
    2023-05-12
    Shell脚本echo命令 Shell脚本命令
  • node执行cmd或shell命令使用介绍
    目录引言一、node原生模块:child_process使用二、npm包:shelljs引言 在实现前端工程化的过程中,经常需要在一个js脚本中去执行其他node/npm或者其他sh...
    99+
    2024-04-02
  • linux shell自定义函数(定义、返回值、变量作用域)介绍
    一、定义shell函数(define function) 语法:[ function ] funname [()] { action; [return int;] } 说明: 1、可以带fu...
    99+
    2022-06-04
    自定义 变量 函数
  • shell脚本中$符号的命令用法介绍
    这篇文章主要讲解了“shell脚本中$符号的命令用法介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“shell脚本中$符号的命令用法介绍”吧!   关于$符号,大家肯定...
    99+
    2023-06-09
  • Linux系统Shell命令常用功能使用介绍
    本篇内容主要讲解“Linux系统Shell命令常用功能使用介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux系统Shell命令常用功能使用介绍”吧!  Linux系统中Shell不仅仅...
    99+
    2023-06-13
  • Shell中变量作用域的示例分析
    这篇文章主要为大家展示了“Shell中变量作用域的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Shell中变量作用域的示例分析”这篇文章吧。前言众所周知Shell 中的变量只作用于当前...
    99+
    2023-06-09
  • redis中key命令的介绍和使用
    这篇文章将为大家详细讲解有关redis中key命令的介绍和使用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、概述:进入redis-cli之后,我们通常比较关心的是有哪...
    99+
    2024-04-02
  • redis命令的介绍和使用
    本篇文章展示了redis命令的语法介绍和使用,代码简明扼要容易理解,绝对能让你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Redis 命令用于在 redis 服务上执行操作。要在 redis 服务上执...
    99+
    2024-04-02
  • hbase shell基础和常用命令介绍
    这篇文章主要介绍“hbase shell基础和常用命令介绍”,在日常操作中,相信很多人在hbase shell基础和常用命令介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”hbase shell基础和常用命...
    99+
    2023-06-09
  • Linux less 命令使用介绍
    文章目录 1.命令格式2.命令功能3.命令参数4.按键操作5.示例1、查看文件内容2、ps查看进程信息并通过less分页显示3、查看命令历史使用记录并通过less分页显示5、浏览多个文件 ...
    99+
    2023-09-14
    linux 运维 ubuntu less 服务器
  • .NetCoreSDK命令介绍及使用
    dotnet run 介绍 dotnet 相关命令是属于 .NET Core command-line (CLI) 的一部分,Microsoft 为我们提供了这个命令行工具以供我们在...
    99+
    2024-04-02
  • linux中的常用命令与快捷键介绍
    目录1 系统介绍2 系统快捷方式3 常用系统命令1 系统介绍 1、ping 格式: ping [网址] # 判断系统是否可以正常连网 2、主机登录用户信息 [root@localhost ~]# ...
    99+
    2022-06-04
    linux常用命令 linux快捷键
  • Shell编程中的特殊变量之位置变量介绍
    1、$0 获得当前脚本的文件名,包括路径。 #写一个测试脚本 vim test.sh #内容如下 dirname$0 basename$0 #执行一下 bash$(pwd)/test.sh ...
    99+
    2022-06-04
    变量 位置 Shell
  • Linux 中ls命令的使用详细介绍
    目录1,通过ls列出文件或目录2,通过ls列出文件的长列表3,通过ls列出所有文件包括隐藏文件4,通过ls列出文件或者目录以/结尾5,通过ls命令跳过所有者的详细信息6,ls命令列出文件的索引7,通过ls命令显示文件通过...
    99+
    2022-06-21
    Linux 中ls命令 Linux ls命令使用
  • redis中事务命令的介绍和使用
    这篇文章将为大家详细讲解有关redis中事务命令的介绍和使用,文章内容质量较高,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、概述:Redis 事务的本质是一组命令的集合。事务支持一次执...
    99+
    2024-04-02
  • Linux系统中cut命令的使用介绍
    本篇内容主要讲解“Linux系统中cut命令的使用介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux系统中cut命令的使用介绍”吧!执行权限:所有用户所在位置:/usr/bin/cut...
    99+
    2023-06-12
  • Linux系统中sed命令的使用介绍
    本篇内容主要讲解“Linux系统中sed命令的使用介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux系统中sed命令的使用介绍”吧!sed是linux轻量级流编辑器,用于行的操作,主要...
    99+
    2023-06-13
  • Linux系统中split命令的使用介绍
    本篇内容主要讲解“Linux系统中split命令的使用介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux系统中split命令的使用介绍”吧!位置:/usr/bin/split权限:所有...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作