linux - 如何添加一行或用 awk 或 sed 替换第一行

标签 linux bash sed awk

我想知道如何使用 awk 插入一行

目前我创建了这个脚本:

awk -F'\t' 'BEGIN {OFS="\t";} { print $1,$3,$11,"10"; }' boinc.txt | sed 1d 

输出是:

enter image description here

效果很好!

但是,我想在输出的开头添加一行,指定标题名称,如“key、price、barcode、days”

期望的输出是这样的:

+------------------------------------+
|    key   price   barcode   days    |
+------------------------------------+
| 16112   $23.94  5014682600194   10 |
| 16126   $1.99   019688104122    10 |
| 16152   $7.99   099923118527    10 |
| 16178   $8.99   3366750130396   10 |
| 16233   $5.99   7318590001615   10 |
| 16236   $6.99   410965078691    10 |
| 16257   $8.99   7318590000397   10 |
| 16279   $5.99   7318590000113   10 |
| 16282   $5.99   7318590001387   10 |
| 16318   $6.99   723721898120    10 |
+------------------------------------+

最佳答案

试试这个:

awk '
BEGIN { FS = OFS = "\t"; print "key", "price", "barcode", "days" } 
NR > 1 { print $1, $3, $11, "10" }' boinc.txt 

注意:如果您只是告诉 awk 使用 NR>1< 跳过第一行,则不需要 sed/

关于linux - 如何添加一行或用 awk 或 sed 替换第一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22395831/

相关文章:

regex - sed 中的非贪婪(不情愿)正则表达式匹配?

linux - 无法加载 linux-vdso.so.1 的共享库符号。调试时

linux - bash online - 如何退出 flow -ing 输出

bash - 在 bash 中创建一个锁定文件以避免重复执行

git - 为什么这是我的 .gitconfig 的错误配置行?

php - sed 无法编辑 ssl.conf "Permission denied"

c - 仅从 C 代码中提取函数名称及其注释

c - 在有或没有 ncurses 的情况下,如何修改 linux 控制台中的键盘重复延迟

python - Windows 和 Linux 之间的 WxPython 差异

c++ - cpp Linux套接字编程错误与接受