bash - 如何使用粘贴将一列从file2附加到file1
问题描述
如同
将 fileB 中的一列附加到 FileA 的末尾,并将bash 剪切列到一个文件并保存到另一个文件的末尾
但是,在这种情况下,我希望将结果打印到文件 (file1.txt),而不是标准输出 (stdout)。
背景//我有两个制表符分隔的文件(都有 3 列):
>file1.txt
4481679 4481722 .
4481791 4481820 .
4481947 4482268 .
>file2.txt
13368 - 366
13668 + 940
14016 - 270
所需的输出//我想将 file2.txt 的第二列合并/附加到 file1.txt(最终文件有 4 列):
>file1.txt
4481679 4481722 . -
4481791 4481820 . +
4481947 4482268 . -
错误 //到目前为止,我已经尝试了以下方法(看起来都是正确的——就像上面一样),但每个都只是打印到标准输出:
Attempt1:
$ paste file1.txt <(cut -f2 file2.txt)
Attempt2:
$ cut -f2 file2.txt | paste file1.txt -
Attempt3:
$ paste file1.txt <(awk '{print $2}' file2.txt)
此外,以下打印“ paste: write error: No space left on device paste: write error
”:
Attempt4:
$ paste file1.txt <(cut -f2 file2.txt) >> file1.txt
Attempt5:
$ cut -f2 file2.txt | paste file1.txt - > file3.txt
任何想法如何在不使用 moreutils 的情况下使其工作sponge
(即,仅使用粘贴、剪切、awk、sed 之类的东西)?
解决方案
cut
像这样使用paste
:
paste file1.txt <(cut -f2 file2.txt) > out_file.txt
您的错误与磁盘已满有关。删除多余的文件以释放一些空间。
推荐阅读
- javascript - 如何列出元素中的所有css变量名称/值对
- ubuntu - 在 ubuntu 上安装 adobe air 后找不到 adl
- python - 一段时间后scrapy卡住了
- outlook - Outlook模板文件中下一个工作日的字段?
- r - 当我有两个数据框且第二个数据框的列多于第一个数据框时,如何获取列不匹配报告
- excel - 将字符串变量传递给另一个过程以在循环中为其赋值
- python - 如何执行启动另一个 python 脚本的 python 宏?
- algorithm - 包依赖的高效算法
- swift - 仅在系统唤醒时触发计时器 (macOS)
- android - 为什么带有填充设置的谷歌地图滞后?