linux - Shell 脚本在 gawk 命令中给出错误
问题描述
问题:假设你有一个名为“mark.text”的学生成绩文件,其信息依次为姓名、卷号、主题1、主题2、主题3和总分,即共6列。编写一个 gawk 脚本来搜索名称“Shruti”并显示有关该学生的所有信息。
这是我想从中打印 shruti 数据的文件:
猫>标记.文本
公羊 10 20 30 40 50
里亚 89 76 99 76 80
思鲁提 90 98 99 93 96
我使用的命令是:
grep 'shruti' | 呆呆{print $1 $2 $3 $4 $5 $6}
的标记.text
它给了我错误:
bash:{打印:找不到命令
傻瓜:cmd。行:1:标记.文本
傻瓜:cmd。line:1: ^ 语法错误
解决方案
当 gawk 可以完成完整的工作时,不需要将 grep 传递给 gawk:
gawk '$1=="Shruti" { print }' marks.txt
如果第一个空格分隔字段等于 Shruti,则打印该行。
推荐阅读
- android - 相对布局与线性布局或两者的混合
- pyspark - 将 pyspark 数据帧转换为 JSON 时的性能问题
- matlab - 如何在 s-function builder 中构建临时结构变量?
- amazon-web-services - AWS Cloudformation - 如何手动添加/删除导出?
- java - 如何循环播放我的 mediaPlayer 延迟而不让声音相互播放?
- java - 使用循环时出现 java.lang.reflect.InvocationTargetException
- javascript - 更新的密码未显示在本机反应的 Firebase 数据库中
- java - 无法在 Spring Boot 中使用 JDBC 身份验证创建安全连接
- c++ - 指针符号有什么问题
- ios - 通过 Firebase 从 Google 登录获取出生日期和性别