Size: a a a

2021 January 14

∀lǝxǝʎ in pro.bash
лохматый
всем привет.
ребята, подскажите где бы почитать, чтобы понять, как слить несколько строк по повторяющемуся первому слову
из этого:
word1 lalala
word1 bla
word2 lalala
word2 foo
word3 lalala
word3 123123
word3 foo

сделать:
word1 lalala bla
word2 lalala foo
word3 lalala 123123 foo
?
Сделай ассоциативный массив с ключом из первого слова
источник

∀lǝxǝʎ in pro.bash
Делов на минуту
источник

л

лохматый in pro.bash
∀lǝxǝʎ
Сделай ассоциативный массив с ключом из первого слова
это для меня настолько сложно, что я даже не понимаю о чем ты
источник

∀lǝxǝʎ in pro.bash
лохматый
это для меня настолько сложно, что я даже не понимаю о чем ты
🙈😒
источник

∀lǝxǝʎ in pro.bash
Дойду до компа накорябаю
источник

аᶘ

асоциальный пикотран... in pro.bash
лохматый
всем привет.
ребята, подскажите где бы почитать, чтобы понять, как слить несколько строк по повторяющемуся первому слову
из этого:
word1 lalala
word1 bla
word2 lalala
word2 foo
word3 lalala
word3 123123
word3 foo

сделать:
word1 lalala bla
word2 lalala foo
word3 lalala 123123 foo
?
А ты точно не хочешь на питоне это написать?
источник

л

лохматый in pro.bash
если бы я знал питон
источник

л

лохматый in pro.bash
∀lǝxǝʎ
Сделай ассоциативный массив с ключом из первого слова
ассоциативный массив ищется в гугле только с привязкой к какому либо языку, ни какой связи с башем
источник

аᶘ

асоциальный пикотран... in pro.bash
лохматый
если бы я знал питон
printf "word1 a\nword1 b\nword1 c\nword2 d\nword3 e\n" | awk '{ data[$1] = data[$1] $2 " " } END { for (idx in data) print(idx " " data[idx]) }'
источник

л

лохматый in pro.bash
Только дело осложняется тем, что word1(2,3) и т.д. не известны заранее
источник

аᶘ

асоциальный пикотран... in pro.bash
Ну так.
источник

аᶘ

асоциальный пикотран... in pro.bash
лохматый
Только дело осложняется тем, что word1(2,3) и т.д. не известны заранее
У тебя word1,2,3 -- это именно слова, без пробелов, идут первыми в строке?
источник

л

лохматый in pro.bash
Да
источник

аᶘ

асоциальный пикотран... in pro.bash
Ну попробуй то, что я скинул тебе выше.
источник

∀lǝxǝʎ in pro.bash
асоциальный пикотранзистор ᶘಠᴥಠᶅ
printf "word1 a\nword1 b\nword1 c\nword2 d\nword3 e\n" | awk '{ data[$1] = data[$1] $2 " " } END { for (idx in data) print(idx " " data[idx]) }'
А как же чистый bash?(
источник

аᶘ

асоциальный пикотран... in pro.bash
∀lǝxǝʎ
А как же чистый bash?(
В моём шелле нет массивов, поэтому awk.
источник

∀lǝxǝʎ in pro.bash
асоциальный пикотранзистор ᶘಠᴥಠᶅ
В моём шелле нет массивов, поэтому awk.
презренный posix'ёр
источник

аᶘ

асоциальный пикотран... in pro.bash
лохматый
Только дело осложняется тем, что word1(2,3) и т.д. не известны заранее
printf слева нужен, чтобы показать, что код работает.
источник

л

лохматый in pro.bash
асоциальный пикотранзистор ᶘಠᴥಠᶅ
Ну попробуй то, что я скинул тебе выше.
работает. и почти как надо, если слова с цифрами не отрезались в выводе
источник

аᶘ

асоциальный пикотран... in pro.bash
→ cat test
word1 lalala
word1 bla
word2 lalala
word2 foo
word3 lalala
word3 123123
word3 foo
→ awk '{ data[$1] = data[$1] $2 " " } END { for (idx in data) print(idx " " data[idx]) }' < test
word1 lalala bla
word2 lalala foo
word3 lalala 123123 foo
источник