LINUX.ORG.RU

Использование параметров скрипта Bash

 ,


0

1

Здравствуйте, не могу найти примера использования цикла пробегающего по всем параметрам, по индексу т е

for ((i=1; i <= $#-2; i++))
    do
    	find ${$i} -perm ${[$#-1]}
    done

Сложность в том, что цикл должен проходить по все кроме двух последних параметров. Как это правильно сделать синтаксически?

for var in "${@:1:$(($#-2))}"; do
    ...
done
anonymous
()
while [ $# -gt 2 ]; do
    echo $1
    shift
done
ddos3
()

А если у тебя используется getopts, то может и по-другому весь скрипт переписан.

anonymous
()
Ответ на: комментарий от IvS

Нельзя. Баш умеет в C-style loops вместо этого тормоза.

anonymous
()

Спасибо за помощь, много нового узнал. Еще проблема появилась: в каждой итерации цикла нужно обратиться к предпоследнему параметру. Я пробую «${@:$(($#-1)):$(($#-1))}» но он выдает 2 последних элемента((

imamatory
() автор топика

При чём тут Desktop, школота не ситающая маны?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.