Size: a a a

2021 January 14

аᶘ

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

л

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

л

лохматый in pro.bash
какие-то строки удаляются
источник

аᶘ

асоциальный пикотран... in pro.bash
у тебя там может быть вариант word1 lalala abc в качестве исходной строки?
источник

л

лохматый in pro.bash
асоциальный пикотранзистор ᶘಠᴥಠᶅ
у тебя там может быть вариант word1 lalala abc в качестве исходной строки?
ага, я тупой - просто скопипастил твой ответ и в файл попало word1 lalala abc
источник

л

лохматый 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
awk '{ data[$1] = data[$1] $2 " " } END { for (idx in data) print(idx " " data[idx]) }' работает как надо
источник

∀lǝxǝʎ in pro.bash
∀lǝxǝʎ
А как же чистый bash?(
declare -A arr=(); while read -r key val; do arr[$key]+=" $val"; done < <(printf "word1 1 ff\nword1 1\nword1 2\nword2 d\nword3 e\n"); for key in "${!arr[@]}"; do echo "$key${arr[$key]}"; done
источник

VK

Vyacheslav Koval 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
?
perl -F'/\s+/' -nlE 'push @{$word{$F[0]}}, $F[1]; END { say join " ", $_, @{$word{$_}} for keys %word}' test.txt
word1 lalala bla
word2 lalala foo
word3 lalala 123123 foo
источник

VK

Vyacheslav Koval in pro.bash
raku -ne 'my %h; %h.push: .split(/\s+/); END { for %h.kv -> $k, $v { say join " ", $k, $v;} }' test.txt
word3 lalala 123123 foo
word1 lalala bla
word2 lalala foo
источник

V

Vikentsi in pro.bash
Vyacheslav Koval
raku -ne 'my %h; %h.push: .split(/\s+/); END { for %h.kv -> $k, $v { say join " ", $k, $v;} }' test.txt
word3 lalala 123123 foo
word1 lalala bla
word2 lalala foo
это что ? raku ? язык?
источник

V

Vikentsi in pro.bash
просто на awk похоже
источник

VK

Vyacheslav Koval in pro.bash
да, язык - бывший Perl 6 https://raku.org/
источник

V

Vikentsi in pro.bash
:) да уж, не удивлюсь уже примеру на Lisp от emacs пользователей
источник

VK

Vyacheslav Koval in pro.bash
Можно еще вот так:
raku -ne 'my %h; %h.push: .split(/\s+/); END { %h.pairs>>.join>>.say }' test.txt
word2   lalala foo
word1   lalala bla
word3   lalala 123123 foo

Только между wordN и остальным текстом добавляется \t
источник

D

Dima in pro.bash
Vyacheslav Koval
Можно еще вот так:
raku -ne 'my %h; %h.push: .split(/\s+/); END { %h.pairs>>.join>>.say }' test.txt
word2   lalala foo
word1   lalala bla
word3   lalala 123123 foo

Только между wordN и остальным текстом добавляется \t
Слава, пожалуйста, напиши еще на Ruby, знаю ты можешь.  А мне тут некогда, надо дело делать.
источник

D

Dima in pro.bash
Но! В качестве справедливости.
источник

D

Dima in pro.bash
Еще на  Ruby. По вызову языков общего назначения в  CLI BASH - Слава это дело умеет. От него я много перенял.
источник

D

Dima in pro.bash
Ну с другой стороны, как так? Perl есть, а Ruby и  Python - нет.
источник

D

Dima in pro.bash
И JS нет.  Давайте уж исправим.
источник