4 回答

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊
像這樣的東西,也許..
names = file("/home/smith/file1.txt").readlines()
commands = file("/home/smith/file2.txt").readlines()
res = []
for name in names:
for command in commands:
command = command.split(" ")
res.append(" ".join([command[0],name,command[1]]))
file("/home/smith/file3.txt","w").write("\n".join(res))
我敢肯定這不是最漂亮的方式,但應(yīng)該可以。但是你為什么要做這樣的事情......?

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊
你能更具體地談?wù)勀愕膯?wèn)題嗎?你已經(jīng)嘗試過(guò)什么了嗎?如果是這種情況,請(qǐng)分享。
在我看來(lái),您可以打開 file2,讀取每一行,在空格上拆分兩個(gè)單詞(例如,將其添加到列表中)。然后,您可以為您在該列表中創(chuàng)建的每組單詞創(chuàng)建一個(gè)新字符串。循環(huán) file1 中的每一行。對(duì)于 file1 中的每一行:從 file2 中取出第一個(gè)單詞,添加一個(gè)空格。從 file1 添加實(shí)際行。最后,您添加另一個(gè)空格和第二個(gè)單詞 from。
例如,您現(xiàn)在有一個(gè)新字符串,您可以將其附加到新文件中。您可能應(yīng)該將該字符串附加到創(chuàng)建字符串的同一循環(huán)中的新文件中。
但是話又說(shuō)回來(lái),我不確定這是否是您問(wèn)題的答案。

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個(gè)贊
僅使用實(shí)用程序的另一種解決方案:
join -1 2 -2 3 file1 file2 | awk '{printf "%s %s %s\n", $2, $1, $3}' > file3

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊
在 Bash 中試試這個(gè),它回答了你的問(wèn)題
#!/bin/bash
file1=".../f1.txt"
file2=".../f2.txt"
file3=".../f3.txt"
while read p1; do
while read p2; do
word1=$(echo $p2 | cut -f1 -d' ')
word2=$(echo $p2 | cut -f2 -d' ')
echo " $word1 $p1 $word2" >> $file3
done < $file2
done < $file1
添加回答
舉報(bào)