awk - 用 awk 打印多列,但用分号连接
问题描述
我正在使用 awk 过滤上一个命令(docker image ls)返回的输出,该命令是制表符分隔的列。
我想用 : 打印前 2 列。
我试过的:
docker image ls | awk '{ print $1\:$2}'
但无论我如何尝试打印 $1 和 $2 我仍然得到
awk: syntax error at source line 1
context is
{ print $1 >>> \ <<< \ $2}
awk: illegal statement at source line 1
如何在输出中使用 :?
谢谢!
解决方案
将OFS
变量设置为所需的分隔符:
docker image ls | awk -v OFS=":" '{print $1, $2}'
推荐阅读
- c++ - 如何连接二进制宏值?什么是二进制类型?
- laravel - 需要在特定路由 VUE 上向后端 api (LARAVEL) 发送请求
- database - 颤振的后端
- perl - Perl 嵌套 if 语句
- python - 如何在 Python DataFrames 中按 3 列分组并给出计数
- php - 计数数组 PHP
- html - 如何停止浏览器将括号中的数字(例如(1))转换为带圆圈的数字①?
- powershell - 从看到多行的选择字符串中获取特定内容
- tcl - TCL 中 lsort 的奇数输出
- java - 在使用 `com.google.schemaorg` java 库时,有什么方法可以指定您自己的词汇表吗?