合併在像粘貼命令
回答
只是找到了一種方法做,
for file in `cat tmp1`
do
for f in `cat tmp2`
do
echo $file $f
done
done
[不要用'for for'讀取行](http://mywiki.wooledge.org/DontReadLinesWithFor)。另外,通常最好使用文本處理工具。 –
如果行的順序不是那麼重要
awk 'FNR==NR{a[$0];next}{for(i in a){print $0,i}}' tmp2 tmp1
如果要恢復訂單:
awk 'FNR==NR{a[FNR]=$0;l=FNR;next}{for(i=1;i<=l;i++){print $0,a[i]}}' tmp2 tmp1
我不知道你爲什麼要特別提出'nawk';這應該在任何版本中工作。您可以在第一個塊中使用'a [++ n] = $ 0'來跟蹤行數。 –
$ while read a; do while read b; do echo $a $b; done<tmp1; done<tmp2
vol1 1
vol1 2
vol1 3
vol2 1
vol2 2
vol2 3
或者用一個更好的縮進:
while read a; do
while read b; do
echo $a $b
done <tmp1
done <tmp2
對於在tmp2
文件中的每個字,回聲它隨後在tmp1
文件中的每個字。
如果在這兩個文件中的實際數據包含反斜槓,或者如果tmp2
文件包含在第一列破折號,那麼下面會有一個更好更強大的解決方案:
while read -r a; do
while read -r b; do
printf '%s %s\n' "$a" "$b"
done <tmp1
done <tmp2
我建議總是使用'read -r'並引用你的變量。另外,請考慮使用'printf'%s%s \ n'「$ a」「$ b」'。 –
@TomFenech你說得對,但我們得到了一組特定的數據。不過,我會更新答案。 – Kusalananda
@TomFenech在這種情況下使用printf有什麼好處?另外,因爲變量是否包含空格並不重要,在這種情況下,引用嚴格來說是不必要的。 – Kusalananda
- 1. 粘貼命令
- 2. 鉤字粘貼命令
- 3. Eclipse「粘貼」命令破解
- 4. 在某種循環,粘貼命令
- 5. 在unix中粘貼執行命令
- 6. 在jpeg圖像上粘貼或合併透明支持圖像
- 7. 結合圖例和粘貼命令在基地R的陰謀
- 8. 粘貼輸出到bash的一個CSV文件,粘貼命令
- 9. 在Windows命令提示符下粘貼但不執行命令
- 10. 粘貼tee命令的結果
- 11. 複製/粘貼從emacs的命令行
- 12. 翻轉粘貼命令輸出
- 13. 粘貼命令留下空行
- 14. 將sql粘貼到mySql命令行中?
- 15. Sharepoint 2010功能區粘貼命令
- 16. neo4j瀏覽器粘貼多個命令
- 17. vim:從命令行刪除(剪切)並放入(粘貼)
- 18. 合併和R中粘貼重複列
- 19. cbind或通過粘貼名稱合併?
- 20. 命令合併
- 21. 複製並粘貼在QTableView
- 22. 粘貼圖像excel
- 23. 令牌粘貼和__LINE__
- 24. TF合併命令
- 25. 在命令中輸入輸入流的某個字段,並粘貼結果
- 26. 在R中使用粘貼來連接命令
- 27. 在R添加「「」報價粘貼命令裏面
- 28. 任何vim命令在粘貼後進入插入模式?
- 29. 在vim中以命令模式或搜索模式粘貼(/)
- 30. 在R的粘貼命令中使用'sep'有什麼用?
請格式化正確的問題,檢查[問]並顯示你的努力。 – fedorqui
這完全不同於'paste'命令... – Kusalananda