怎么让awk使用 Shell 变量

技术怎么让awk使用 Shell 变量这篇文章给大家分享的是有关怎么让awk使用 Shell 变量的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。有两种可能的方法可以让 awk 使用 shell

这篇文章是关于如何让awk使用Shell变量。我觉得边肖挺实用的,就分享给大家参考,和边肖一起来看看。

awk使用外壳变量有两种可能的方式:

1. 使用 Shell 引用

让我们用一个例子来演示如何在awk命令中使用外壳引用而不是外壳变量。在本例中,我们希望在文件/etc/passwd中搜索用户名,过滤并输出用户的帐户信息。

因此,我们可以编写一个包含以下内容的test.sh脚本:

#!/bin/bash###读取用户名read-p ‘请输入用户名:’ username###在/etc/passwd中搜索用户名,然后在屏幕上输出详细信息cat/etc/passwd | awk ‘/$ username/’ { print $ 0 } ‘。然后保存文件并退出。

以上test.sh脚本中awk命令的解释:

cat/etc/passwd | awk ‘/$ username/’ ‘ { print $ 0 } ‘ ‘/$ username/’:此shell引用了用于替换awk命令中shell变量username的值。username的值是要在文件/etc/passwd中搜索的模式。

请注意,双引号位于awk脚本“{print $0}”之外。

接下来,向脚本添加可执行权限并运行它,如下所示:

$chmod xtest.sh$。/text.sh运行脚本后,它会提示您输入用户名,然后您输入合法用户名并按回车键。您将从/etc/passwd文件中看到详细的用户帐户信息,如下图所示:

怎么让awk使用 Shell  变量

在密码文件中查找用户名的Shell脚本。

2. 使用 awk 进行变量赋值

与上面介绍的方法相比,这种方法更简单、更好。考虑到上面的例子,我们可以运行一个简单的命令来完成同样的任务。在这个方法中,我们使用-v选项将shell变量的值赋给awk变量。

首先,创建一个shell变量username,然后给它一个我们想要在/etc/passwd文件中搜索的名称。

Username=’aaronkilik ‘然后输入以下命令并按enter键:

# cat/etc/passwd | awk-vname=’ $ username ‘ ‘ $ 0 ~ name { print $ 0 } ‘怎么让awk使用 Shell  变量

使用awk在密码文件中查找用户名。

上述命令的描述:

声明变量的-v: awk选项之一。

Username:是一个shell变量。

Name:是一个awk变量。

让我们仔细看看awk脚本“$0 ~ name {print $0}”中的$0 ~ name。请记住,当我们在awk系列的第四部分中引入awk比较运算符时,value ~ pattern是比较运算符之一,这意味着如果value与pattern匹配,它将返回true。

通过管道传输到awk的cat命令的输出($0)与模式(aaronkilik)匹配,该模式是我们在/etc/passwd、* * *中搜索的名称,比较操作返回true。接下来,屏幕上将输出一行包含用户帐户信息的内容。

感谢阅读!我希望这篇关于“如何让awk使用Shell变量”的文章就在这里。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/50271.html

(0)

相关推荐

  • ajax翻译成什么意思(ajax用英文怎么读)

    技术ajax单词的意思是什么本篇内容主要讲解“ajax单词的意思是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ajax单词的意思是什么”吧!

    攻略 2021年12月17日
  • 7272好看动漫排行,你心目中的动漫排行榜前十名

    技术7272好看动漫排行,你心目中的动漫排行榜前十名1.机动战士高达00 2.新世纪福音战士
    3.铁臂阿童木
    4.多拉A梦
    5.名侦探柯南 在介绍点动漫给你 《死神》(打斗)
    《海贼王》(励志,打斗)
    《火影忍

    生活 2021年10月26日
  • 数字英语,英语数字读法and规则

    技术数字英语,英语数字读法and规则英语数字读法及规则如下数字英语:1.从1——10one,two,three,four,five,six,seven,eight,nine,ten.2.从 11——19eleven,tw

    生活 2021年10月27日
  • 块元素和行内元素

    技术块元素和行内元素 块元素和行内元素块元素(block element)- 在网页中一般通过块元素来对页面进行布局,比如div是块级元素行内元素(inline element)- 行内元素主要用来包裹

    礼包 2021年12月10日
  • 兼职翻译,英语兼职翻译一般都什么水平

    技术兼职翻译,英语兼职翻译一般都什么水平之前在公司上班的时候兼职翻译,公司的兼职遍布各行各业,其中有个很厉害的公务员兼职,每个月做稿量10万+,甩开一片专职译员。提高英语能力方法和资料都太多了,具体到个人就是只有不断的练

    生活 2021年10月30日
  • 今日头条邀请码,今日头条极速版填写邀请码教程

    技术今日头条邀请码,今日头条极速版填写邀请码教程1今日头条邀请码、若是想在今日头条极速版里面填写邀请码,大家需要从主页的右上角点击头像按钮,登录账号进入个人中心,从列表里找到“输入邀请码”的功能。2、进入到输入邀请码的页

    生活 2021年11月1日