Вопросы с тегом «array»

Массив - это самая простая структура данных для хранения элементов в непрерывной памяти.

4
Непрямой возврат всех элементов в массиве
Страница руководства Bash описывает использование ${!a}для возврата содержимого переменной, имя которой является содержимым a(уровень косвенности). Я хотел бы знать, как вернуть все элементы в массиве, используя это, т.е. a=(one two three) echo ${a[*]} возвращается one two three Я хотел бы для: b=a echo ${!b[*]} вернуть то же самое. К сожалению, …
10 bash  array 

6
Bash сортировать массив по длине элементов?
Учитывая массив строк, я хотел бы отсортировать массив в соответствии с длиной каждого элемента. Например... array=( "tiny string" "the longest string in the list" "middle string" "medium string" "also a medium string" "short string" ) Должен сортировать в ... "the longest string in the list" "also a medium string" "medium …

2
В цикле над массивом добавьте элемент в массив
У меня есть проблема с для цикла в Bash. Например: у меня есть массив ("etc" "bin" "var"). И я перебираю этот массив. Но в цикле я хотел бы добавить некоторое значение в массив. Например array=("etc" "bin" "var") for i in "${array[@]}" do echo $i done Это отображает etc bin var(конечно, …
9 bash  array  for 

4
Передача нескольких каталогов в опцию -prune в find
Я использую findдля поиска и удаления файлов резервных копий, но хочу исключить определенные каталоги из поиска. Резервные имена файлов может заканчиваться .bck, bak, ~или backup. Код минимального рабочего примера (MWE), который нужно исключить только из трех каталогов: #! /bin/bash find . -type d \( -path "./.*" -o -path "./Music" -o …

2
Gawk: передача массивов в функции
Застрял в GNU awk 3.1.6 и думаю, что я обошел его ошибки массива, но все еще имеет то, что похоже на проблему с областью действия в 600-строчной программе awk. Нужно проверить понимание области действия массива в awk, чтобы найти мою ошибку. Учитывая этот иллюстративный код awk ... function foo(ga) { …
9 awk  function  array 

1
Массивы и циклы в зш
Я пытаюсь изучить циклы и манипуляции с массивами в zsh. Скажем, у меня есть два массива в zsh с одним и тем же неизвестным количеством элементов, и каждый из них содержит список путей, например LOCAL_ARRAY=($LOCAL_PATH_1 $LOCAL_PATH_2 $LOCAL_PATH_3) REMOTE_ARRAY=($REMOTE_PATH_1 $REMOTE_PATH_2 $REMOTE_PATH_3) Я хотел бы перебрать оба массива одновременно с общим индексом, …
9 zsh  array 

5
Использование подстановки параметров в массиве Bash
У меня есть file.txt, который мне нужно прочитать в массив Bash. Затем мне нужно удалить пробелы, двойные кавычки и все, кроме первой запятой в каждой записи . Вот как далеко я продвинулся: $ cat file.txt 10,this 2 0 , i s 30,"all" 40,I 50,n,e,e,d,2 60",s e,e" $ cat script.sh #!/bin/bash …

2
Как я могу создать массив из первой строки нескольких источников текста?
У меня есть массив путей к файлам, каждый из которых имеет несколько строк текста. Я хотел бы создать массив, который заполняется первой строкой каждого файла, обработанного следующим образом: # this.txt first line is [Test this] # another.txt first line is [Test another] paths=( ./this/path/this.txt ./another/path/another.txt ) for i in ${paths[@]}; …

1
Ссылки на элементы массива по строкам и инициализация массивов в awk
#!/usr/bin/env bash awk ' BEGIN { arr[A]=1; arr[B]=1; arr[C]=1; arr[E]=1; arr[J]=8; arr[Q]=10; print arr[J] }' Приведенная выше команда выводит последнее установленное значение для arr['subscript'], в данном случае 10это значение arr[Q]непосредственно перед, printа не 8значение arr[J]. Кроме того, как и в приведенном выше сценарии, я не хочу присваивать значения arr['A'], arr['B'], …
8 awk  array 

4
как сдвинуть значение массива в bash
мы хотим построить 6 папок точки монтирования в качестве примера /data/sdb /data/sdc /data/sdd /data/sde /data/sdf /data/sdg поэтому мы написали этот простой скрипт bash, используя массив folder_mount_point_list="sdb sdc sdd sde sdf sdg" folderArray=( $folder_mount_point_list ) counter=0 for i in disk1 disk2 disk3 disk4 disk4 disk5 disk6 do folder_name=${folderArray[counter]} mkdir /data/$folder_name let …

8
Сортировать массив путей к файлам по их базовым именам
Предположим, что у меня есть список путей файлов, хранящихся в массиве filearray=("dir1/0010.pdf" "dir2/0003.pdf" "dir3/0040.pdf" ) Я хочу отсортировать элементы в массиве в соответствии с базовыми именами имен файлов в числовом порядке sortedfilearray=("dir2/0003.pdf" "dir1/0010.pdf" "dir3/0040.pdf") Как я могу это сделать? Я могу сортировать только их базовые части: basenames=() for file in …
8 bash  filenames  sort  array 

5
Как создать массив уникальных элементов из строки / массива в Bash?
Если у меня есть строка «1 2 3 2 1» - или массив [1,2,3,2,1] - как я могу выбрать уникальные значения, т.е. "1 2 3 2 1" produces "1 2 3" или [1,2,3,2,1] produces [1,2,3] Похоже на uniq, но uniq, похоже, работает на целых строках, а не на шаблонах внутри …

3
Каков наиболее правильный способ передачи массива в функцию?
Предположим, у меня очень большой массив $large_list, есть ли способ написать функцию, которая будет принимать массив в качестве аргумента? Например: echo_idx_array () { arr="$1" idx="$2" echo "${arr[$idx]}" } Какова обычная стратегия сделать что-то подобное? Я попытался дать переменную, $large_listно она была пуста. Я готов изменить функцию, чтобы адаптировать ее к …
8 shell  ksh  array 
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.