LittleGreenCat zrewidował ten Gist . Przejdź do rewizji
1 file changed, 2 insertions, 3 deletions
shell.sh
@@ -1,13 +1,12 @@ | |||
1 | 1 | <uniques>=($(echo "${<array>[@]}" | tr ' ' '\\n' | sort -u | tr '\\n' ' ')) | |
2 | 2 | ||
3 | - | Пример: | |
4 | - | ||
3 | + | # Пример: | |
5 | 4 | --> ARRAY=("one" "one" "two" "two" "two" "one" "three") | |
6 | 5 | --> UNIQUES=($(echo "${ARRAY[@]}" | tr ' ' '\\n' | sort -u | tr '\\n' ' ')) | |
7 | 6 | --> echo $UNIQUES | |
8 | 7 | one three two | |
9 | 8 | ||
10 | - | # улучшенный вариант от Ивана Гришина - @JohnMcGru - и правильнее, и короче | |
9 | + | # улучшенный вариант от Ивана Гришина - https://t.me/JohnMcGru - и правильнее, и короче | |
11 | 10 | UNIQUES=( $(printf "%s\n" "${ARRAY[@]}" | sort -u ) ) | |
12 | 11 | echo "${UNIQUES[@]}" | |
13 | 12 | ###one three two |
LittleGreenCat zrewidował ten Gist . Przejdź do rewizji
1 file changed, 22 insertions
shell.sh(stworzono plik)
@@ -0,0 +1,22 @@ | |||
1 | + | <uniques>=($(echo "${<array>[@]}" | tr ' ' '\\n' | sort -u | tr '\\n' ' ')) | |
2 | + | ||
3 | + | Пример: | |
4 | + | ||
5 | + | --> ARRAY=("one" "one" "two" "two" "two" "one" "three") | |
6 | + | --> UNIQUES=($(echo "${ARRAY[@]}" | tr ' ' '\\n' | sort -u | tr '\\n' ' ')) | |
7 | + | --> echo $UNIQUES | |
8 | + | one three two | |
9 | + | ||
10 | + | # улучшенный вариант от Ивана Гришина - @JohnMcGru - и правильнее, и короче | |
11 | + | UNIQUES=( $(printf "%s\n" "${ARRAY[@]}" | sort -u ) ) | |
12 | + | echo "${UNIQUES[@]}" | |
13 | + | ###one three two | |
14 | + | ||
15 | + | # внутри скобочек VAR=(...) можно оставлять переводы строк | |
16 | + | VAR=( it | |
17 | + | is | |
18 | + | OK | |
19 | + | ) | |
20 | + | echo "${VAR[@]}" | |
21 | + | ||
22 | + | # опубликовано в https://t.me/gitgate |