我有一個變量,其中包含其他幾個變量的名稱列表。這些變量都包含一個表格。我想加入所有這些表格。bash:加入多個變量的內容
該表時會是這個樣子:
Name Average Name Average
A 1 A 1.1
B 2 B 2.2
C 3 C 3.3 etc.
D 4 D 4.4
E 5 E 5.5
我的變量名的列表被稱爲$ all_variables和這裏是它的內容看起來像(在現實情況下多了很多變數):
echo "$all_variables"
$table1
$table2
$table3
$table4
$table5
要創建的連接功能的參數列表中,我創建了$ all_variables_join,其中包含了加入函數的參數:
echo "$all_variables_join"
<(echo "$table1") <(echo "$table2") <(echo "$table3") <(echo "$table4") <(echo "$table5")
那麼我想運行加入(基於第一列,所以我使用默認選項),使用這樣的事情:
join "$all_variables_join" > file.txt
這將擴大到
join <(echo "$table1") <(echo "$table2") <(echo "$table3") <(echo "$table4") <(echo "$table5") > file.txt
而且file.txt的會包含這樣的事情:
Name Average
A 1 1.1
B 2 2.2
C 3 3.3 etc...
D 4 4.4
E 5 5.5
然而,當我嘗試運行此我得到這個錯誤:
join "$all_variables_join" > file.txt
join: missing operand after `<(echo "$table1") <(echo "$table2") <(echo "table3") <(echo "$table4") <(echo "$table5")'
Try `join --help' for more information.
任何想法如何解決這個問題?
任何幫助非常感謝!
感謝
編輯:修正了錯誤信息,我已經抄錯一個
目前還不清楚你想要做什麼。聽起來像是一個XY問題:對您的問題可能有完全不同的解決方案。 – choroba
基本上我可以減少這一點,說我想從一個變量調用連接參數。加入「$ all_variables_join」> file.txt將被擴展爲加入<(echo「$ table1」)<(echo「$ table2」)等 – arielle
擴展似乎運作良好,我只是不明白爲什麼我得到這個錯誤消息 – arielle