有时需要将 Bash 命令的输出保存以作他用。Bash 提供了两种将 Bash 命令的输出赋值给 Bash 变量的方法。

方法一:

variable=$(command)
variable=$(command [option…] argument1 arguments2 …)
variable=$(/path/to/command)

方法二:

variable=`command`
variable=`command [option…] argument1 arguments2 …`
variable=`/path/to/command`

下面这种方法是比较旧式的用法。它用的不是单引号,而是 backquote ,也就是 Esc 下面的那个键。在命令比较复杂,包含一些特殊字符的时候,优先选择第一种方法。

举个例子:将日期赋值给 Bash 本地变量:

[11:49:27]$ curr_date=$(date)[11:50:17]$ date && echo $curr_date
2022年 4月28日 星期四 11时50分55秒 CST
2022年 4月28日 星期四 11时50分17秒 CST

另一个例子:用 vim 阅读长文本时,可以把当前阅读的行数写到末行;下次可以用下面的命令继续阅读。

vim +$(tail -n 1 test.txt) test.txt

最后介绍一个听网络新闻的方法: 前提是你已经安装了 youtube-dl 与 ffplay 。

$ variName=$(youtube-dl --no-check-certificate --get-url https://tv.cctv.com/2022/04/27/VIDEaTodCuHBwcIvs5gnqD9X220427.shtml) && ffplay -autoexit -vn -nodisp $variName

这里真的是最后了。

如何将 Bash 命令的输出赋值给 Bash 变量相关推荐

  1. linux从Mac下载文件,如何将命令的输出保存到Bash中的文件(也称为Linux和macOS终端) | MOS86...

    当您在bash提示符下运行命令时,通常将该命令的输出直接打印到终端,以便您立即读取.但是bash也允许你 这可以在任何操作系统的bash中运行,从Linux和macOS到Windows 10 选项On ...

  2. bash命令的使用方法

    小编给大家分享一下bash命令的使用方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!  Bash(Bash)是 Bour ...

  3. linux中shell命令行缩进,Linux下几个实用的bash命令 | 旺旺知识库

    一.扩展字段匹配 首先我们来看一个叫做扩展字段匹配的功能.这个选项允许你执行比标准Bash所提供的更复杂的字段匹配.例如,你可以定位除了后缀为.tmp之外的所有文件.扩展字段匹配功能可以通过shopt ...

  4. Linux学习之Bash命令

    1. man命令用来访问存储在Linux系统上的手册页面,如: man xtern 如果不记得命令名,可以使用关键字搜索手册页,语法是:man -k 关键字 2.遍历目录 cd命令 cd destin ...

  5. shell脚本将命令的输出结果赋值给变量

    Shell 命令替换是指将命令的输出结果赋值给某个变量.比如,在某个目录中输入 ls 命令可查看当前目录中所有的文件,但如何将输出内容存入某个变量中呢?这就需要使用命令替换了. Shell 中有两种方 ...

  6. mac上的终端bash命令

    (一) Bourne-Again Shell简介 mac上的终端使用的是Bourne-Again Shell命令,简称bash bash是GNU组织开发和推广的一个项目,是对Bourne shell的 ...

  7. 常用Bash命令整理

    1 历史别名与常用快捷键 1.2 命令别名 alias 别名='原命令'#设定命令别名 alias#查询命令别名S 命令执行时顺序 第一顺位执行用绝对路径或相对路径执行的命令 第二顺位执行别名 第三顺 ...

  8. bash命令使用详解

    这篇文章是分享的关于bash命令使用的技巧和方法,有需要的小伙伴可以学习下. 在Linux上采用bash作为标准,它描述了对带有".sh"扩展名的vim编辑器等文本的处理与执行. ...

  9. bash命令解释器(shell)

     介于操作系统内核和用户之间的一个绝缘层,一种被称为解释性语言或者脚本语言的计算机语言.通过将系统调用.公共程序.工具和编译过的二进制程序"粘合"在一起来建立应用,所有的UNIX命 ...

最新文章

  1. Android初学第36天
  2. linux 下oracle启动步骤
  3. java 安卓基础面试题_android-------Java 常问的基础面试题
  4. Leaflet中原生方式实现测距
  5. 怎么查电脑系统版本_程序员的bug解决不了怎么办?
  6. 新唐c语言怎么计算指数运算,C语言位域精解
  7. You can‘t specify target table ‘XXX‘ for update in FROM clause
  8. python中字符串添加r的作用,原始字符串不发生转义
  9. layui导航栏页面滚动固定_网站建设页面导航如何降低用户寻找的时间
  10. 从NetCore报错到MySql安全
  11. 安装mysql没有密码_如何在没有密码提示的情况下安装MySQL?
  12. c语言std变量,10-C ++中的变量
  13. paip.支付宝即时到账接口改双功能接口.txt
  14. 大数据分析笔记 (2) - 数据分析统计方法
  15. 多卡汇聚路由器、多网融合、弱网通信
  16. 防火墙——隧道技术类型
  17. VM中centos中设置共享文件夹
  18. android上hdmi投屏TV未铺满,让4K电视满血重生 手机投屏体验比一比
  19. Redis 学习笔记(1)—— Redis安装,String 类型测试
  20. 告别获取不安全的相对路径-取当前类的Classpath

热门文章

  1. 亚马逊新品如何推广引流?新产品上架后跨境新手操作流程
  2. Magisk全自动修补一键ROOT 刷入面具 LSP
  3. ddr 和 selectio ip 为什么能实现高速
  4. 获得京东商品分类 API
  5. 手把手,嘴对嘴教你Spring Cloud 微服务实战 -- 初识Spring Cloud
  6. 3G应用开发之Android 传智播客 基础知识总结
  7. H5手写签名canvas(附源码)
  8. pdf拆分成一页一页,pdf拆分教程
  9. 【java链表反转:递归实现逆向翻转(leetcode)】
  10. 【转载】从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (二)