返回顶部
首页 > 资讯 > 精选 >如何使用Shell中的${}、##和%%
  • 611
分享到

如何使用Shell中的${}、##和%%

2023-06-09 18:06:38 611人浏览 泡泡鱼
摘要

这篇文章主要介绍“如何使用shell中的${}、##和%%”,在日常操作中,相信很多人在如何使用Shell中的${}、##和%%问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用Shell中的${}、##

这篇文章主要介绍“如何使用shell中的${}、##和%%”,在日常操作中,相信很多人在如何使用Shell中的${}、##和%%问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用Shell中的${}、##和%%”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

假设我们定义了一个变量为:

代码如下:

file=/dir1/dir2/dir3/my.file.txt

可以用${ }分别替换得到不同的值:

代码如下:

${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}:删掉最后一个 /  及其左边的字符串:my.file.txt
${file#*.}:删掉第一个 .  及其左边的字符串:file.txt
${file##*.}:删掉最后一个 .  及其左边的字符串:txt
${file%/*}:删掉最后一个  /  及其右边的字符串:/dir1/dir2/dir3
${file%%/*}:删掉第一个 /  及其右边的字符串:(空值)
${file%.*}:删掉最后一个  .  及其右边的字符串:/dir1/dir2/dir3/my.file
${file%%.*}:删掉第一个  .   及其右边的字符串:/dir1/dir2/dir3/my

记忆的方法为:

代码如下:

# 是 去掉左边(键盘上#在 $ 的左边)
%是去掉右边(键盘上% 在$ 的右边)
单一符号是最小匹配;两个符号是最大匹配
${file:0:5}:提取最左边的 5 个字节:/dir1
${file:5:5}:提取第 5 个字节右边的连续5个字节:/dir2

也可以对变量值里的字符串作替换:

代码如下:

${file/dir/path}:将第一个dir 替换为path:/path2/dir2/dir3/my.file.txt
${file//dir/path}:将全部dir 替换为 path:/path2/path3/path4/my.file.txt

利用 ${ } 还可针对不同的变数状态赋值(沒设定、空值、非空值):

${file-my.file.txt} :假如 $file 沒有设定,則使用 my.file.txt 作传回值。(空值及非空值時不作处理)
${file:-my.file.txt} :假如 $file 沒有設定或為空值,則使用 my.file.txt 作傳回值。 (非空值時不作处理)
${file+my.file.txt} :假如 $file 設為空值或非空值,均使用 my.file.txt 作傳回值。(沒設定時不作处理)
${file:+my.file.txt} :若 $file 為非空值,則使用 my.file.txt 作傳回值。 (沒設定及空值時不作处理)
${file=my.file.txt} :若 $file 沒設定,則使用 my.file.txt 作傳回值,同時將 $file 賦值為 my.file.txt 。 (空值及非空值時不作处理)
${file:=my.file.txt} :若 $file 沒設定或為空值,則使用 my.file.txt 作傳回值,同時將 $file 賦值為my.file.txt 。 (非空值時不作处理)
${file?my.file.txt} :若 $file 沒設定,則將 my.file.txt 輸出至 STDERR。 (空值及非空值時不作处理)

${file:?my.file.txt} :若 $file 没设定或为空值,则将 my.file.txt 输出至 STDERR。 (非空值時不作处理)
${#var} 可计算出变量值的长度:

${#file} 可得到 27 ,因为/dir1/dir2/dir3/my.file.txt 是27个字节
[/code]

到此,关于“如何使用Shell中的${}、##和%%”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 如何使用Shell中的${}、##和%%

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

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

猜你喜欢
  • 如何使用Shell中的${}、##和%%
    这篇文章主要介绍“如何使用Shell中的${}、##和%%”,在日常操作中,相信很多人在如何使用Shell中的${}、##和%%问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用Shell中的${}、##...
    99+
    2023-06-09
  • Linux中如何安装和使用Translate Shell
    这篇文章主要介绍了Linux中如何安装和使用Translate Shell,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Translate Shell 是一个支持 Googl...
    99+
    2023-06-27
  • PHP中如何使用API对象和Shell?
    PHP是一种被广泛使用的脚本语言,它可以通过使用API对象和Shell来实现更加高效的编程和系统管理。在本文中,我们将介绍PHP中如何使用API对象和Shell,并且提供一些实例代码来帮助您更好地理解这些概念。 一、API对象 API(Ap...
    99+
    2023-08-12
    api 对象 shell
  • 如何在Python中使用Unix Shell和npm?
    Python是一种高级编程语言,提供了许多强大的工具和库,使其成为数据科学和机器学习领域的首选语言。但是,有时候需要在Python中使用Unix Shell和npm(Node.js的包管理器),以便更好地完成任务。在本文中,我们将探讨如何在...
    99+
    2023-08-24
    unix shell npm
  • 在Python中,如何使用Shell和Unix命令?
    在Python中,使用Shell和Unix命令可以让我们更高效地完成一些任务。本文将介绍如何在Python中使用Shell和Unix命令。 首先,我们需要了解Python中如何调用Shell命令。Python提供了os模块来处理与操作系统交...
    99+
    2023-06-16
    numy shell unix
  • 如何在 Python 中同时使用 shell 和 numpy?
    Python 是一种高级编程语言,它具有强大的数据处理和分析功能。同时,Python 还支持 shell 命令行操作。因此,对于需要同时使用 shell 和 numpy 的 Python 用户来说,如何在 Python 中同时使用 she...
    99+
    2023-06-27
    并发 shell numy
  • 如何在Java IDE中使用Shell和容器?
    Java是一种广泛使用的编程语言,而Shell和容器则是与Java密切相关的两个重要概念。本文将介绍如何在Java IDE中使用Shell和容器,以及如何通过演示代码来实现这一过程。 一、什么是Shell? Shell是一种命令行解释器,它...
    99+
    2023-07-18
    ide shell 容器
  • ASP教程中如何使用接口和Shell?
    ASP(Active Server Pages)是一种基于服务器端的动态网页技术,它允许开发人员使用多种编程语言来创建动态网页。在ASP中,接口(interface)和Shell对象都是非常有用的功能,本篇文章将介绍如何在ASP教程中使用它...
    99+
    2023-11-03
    教程 接口 shell
  • Shell中的${}、##和%%使用范例
    今天看一个脚本文件的时候有一些地方不太懂,找了一篇文章看了一些,觉得不错,保留下来。 假设我们定义了一个变量为: file=/dir1/dir2/dir3/my.file.txt 可以用${ }分别...
    99+
    2022-06-04
    范例 Shell
  • 如何在Unix系统中使用PHP API和Shell?
    Unix系统中的PHP API和Shell是两个非常有用的工具,它们可以帮助我们完成很多任务。在本文中,我们将介绍如何在Unix系统中使用PHP API和Shell。 一、PHP API介绍 PHP API是PHP语言提供的一组API,它可...
    99+
    2023-09-23
    api shell unix
  • 如何在ASP中使用Shell?
    ASP是一种非常流行的服务器端脚本语言,它可以用来创建动态网站和Web应用程序。在ASP中使用Shell可以很方便地执行一些系统级别的操作,比如运行命令行工具、读取文件、创建文件夹等等。本文将介绍如何在ASP中使用Shell,以及一些常见的...
    99+
    2023-10-17
    shell 文件 ide
  • 如何在Shell中使用时间和日期函数
    这篇文章将为大家详细讲解有关如何在Shell中使用时间和日期函数,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。shell下获取系统时间的方法直接调用系统变量获取今天时期:`date +%Y%...
    99+
    2023-06-09
  • 如何在Go语言中使用Shell和Bash命令?
    Go语言作为一门高效且功能强大的编程语言,它在系统编程和网络编程领域中有着广泛应用。在实际开发过程中,我们经常需要使用Shell和Bash命令来完成一些系统级操作。本文将介绍如何在Go语言中使用Shell和Bash命令,并给出相关的演示代码...
    99+
    2023-09-30
    并发 shell bash
  • 如何在PHP、Shell、Django中创建和使用函数?
    在编程中,函数是一种非常重要的工具,可以帮助我们将代码分解成可重复使用的部分。无论您是在使用PHP、Shell还是Django,函数都是不可或缺的。在本文中,我们将探讨如何在这三种编程语言中创建和使用函数。 一、PHP中创建和使用函数 在P...
    99+
    2023-09-18
    shell django 函数
  • 如何在Windows中使用shell来管理Python和npm?
    Windows操作系统自带的shell命令行界面可以非常方便地管理Python和npm。本文将介绍如何在Windows中使用shell来管理Python和npm,包括安装、升级和卸载软件包,以及如何管理Python虚拟环境。 一、安装Pyt...
    99+
    2023-10-14
    npm shell windows
  • PHP中如何使用Shell和Git来构建框架?
    在Web开发中,构建一个高效、可扩展的框架是非常重要的。PHP作为一门流行的Web开发语言,有许多优秀的框架可以使用。但是,如果你想自己构建一个框架,你可以使用Shell和Git来帮助你完成这个任务。 Shell是一个命令行工具,可以用于...
    99+
    2023-10-20
    shell git 框架
  • Java和JavaScript:如何在Shell脚本中使用它们?
    Shell脚本是一种能够在Unix和Linux操作系统中运行的脚本语言。它是一种强大的工具,可以用来自动化操作系统的各种任务,包括文件管理、系统管理、网络管理等。在Shell脚本中,我们可以使用各种编程语言的代码来完成任务,包括Java和...
    99+
    2023-11-11
    javascript shell 关键字
  • 如何使用shell中的各种括号
    这篇文章主要讲解了“如何使用shell中的各种括号”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用shell中的各种括号”吧!在这里我想说的是几种shell里的小括号,大括号结构和有括...
    99+
    2023-06-09
  • Shell中如何使用test命令
    这篇文章将为大家详细讲解有关Shell中如何使用test命令,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方...
    99+
    2023-06-05
  • Shell文本中如何使用sed
    小编给大家分享一下Shell文本中如何使用sed,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!sed 是 stream editor 的缩写,流编辑器,主要用于对...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作