bash中反引号和$()如何使用
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要介绍了bash中反引号和$()如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇bash中反引号和$()如何使用文章都会有所收获,下面我们一起来看看吧。在
千家信息网最后更新 2025年02月01日bash中反引号和$()如何使用
这篇文章主要介绍了bash中反引号和$()如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇bash中反引号和$()如何使用文章都会有所收获,下面我们一起来看看吧。
在bash中,与(反引号)都是用来作命令替换的,命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行。
反引号的使用方式
下面是一个简单的实例:
[root@localhost ~]# echo "There are `ls | wc -l` files in this directory"There are 10 files in this directory
ls |wc -l
用于列出和计算当前目录的文件数,然后将它嵌入到 echo 命令中。
在 shell 脚本中,当然可以执行相同的操作,将ls | wc -l
命令的结果分配给一个变量,稍后使用该变量。
[root@localhost ~]# file_count=`ls | wc -l`[root@localhost ~]# echo "There are $file_count files in this directory"There are 10 files in this directory
$()的使用方式
也可以通过使用$()
代替"`反引号来获得相同的结果,如下例所示:
[root@localhost ~]# echo "There are $(ls | wc -l) files in this directory"There are 10 files in this directory
下面是一个例子,我需要对网络连接中的某些问题进行故障排除,因此我决定每分钟显示总连接数和等待连接数。
[root@localhost ~]# vim netinfo.sh#!/bin/bashwhile truedo ss -an > netinfo.txt connections_total=$(cat netinfo.txt | wc -l) connections_waiting=$(grep WAIT netinfo.txt | wc -l) printf "$(date +%R) - Total=%6d Waiting=%6d\n" $connections_total $connections_waiting sleep 60done
运行一下脚本:
[root@localhost ~]# ./netinfo.sh17:13 - Total= 158 Waiting= 417:14 - Total= 162 Waiting= 017:15 - Total= 155 Waiting= 017:16 - Total= 155 Waiting= 017:17 - Total= 155 Waiting= 0
如何选择使用哪种方式
这里更推荐使用$()方式。下面是原因: \1. 如果内部命令也使用,
运算符可能会变得混乱。
将需要转义内部的"`,如果将单引号作为命令的一部分或结果的一部分,阅读和排除脚本故障可能会变得困难。 如果开始考虑在其他 运算符中嵌套
运算符,则事情将不会按预期工作或根本不起作用。
\2. $()
操作符更安全,更可预测。
在 $()
运算符中的内容被视为 shell 脚本。从语法上讲,这和把代码保存在文本文件中是一样的。
以下是"`和$()
行为差异的一些示例:
[root@localhost ~]# echo '\$x'\$x[root@localhost ~]# echo `echo '\$x'`$x[root@localhost ~]# echo $(echo '\$x')\$x
关于"bash中反引号和$()如何使用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"bash中反引号和$()如何使用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
引号
命令
方式
结果
脚本
运算符
运算
内容
变量
知识
相同
故障
篇文章
困难
安全
混乱
差不多
事情
代码
件数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
古籍数据库aPp
手机软件开发怎么学
合肥网络安全学校
网络安全的内容是
学生选课 数据库设计
服务器安装后开不了机
科幻关于网络安全的短语
地税系统网络安全
网络安全部门主管的岗位职责
网络安全日常八大隐患是什么
西安信通网络技术有限公司
会员积分管理软件开发报告
服务器管理做什么
网络安全提升国家
网络安全公益宣传
四六级未连接服务器
通过网络安全考试取得实效
从安全服务器禁用vac
那个是5g网络技术
jsp获取服务器信息代码
双系统无法调取数据库
2020年服务器cpu二手
软件开发项目售后运维计划
网络安全对外防护
国家网络安全宣传周好的做法
互联网科技创新素质教育绘画
浏览器的代理服务器设置
阿里云1个服务器有多大
小白数据库官方
广铁集团网络安全工作实施制度