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

Тег для обозначения любых вопросов, касающихся циклов for

6
Почему зацикливание на выводе find плохо работает?
Этот вопрос вдохновлен Почему использование цикла оболочки для обработки текста считается плохой практикой? Я вижу эти конструкции for file in `find . -type f -name ...`; do smth with ${file}; done а также for dir in $(find . -type d -name ...); do smth with ${dir}; done используется здесь почти …
170 files  find  filenames  for 

1
Какова цель ключевого слова «do» в Bash для циклов?
Какова цель doключевого слова в forсинтаксисе цикла Bash ? Для меня это кажется излишним. for i in `seq 1 2`; do echo "hi"; done Почему синтаксис не такой? for i in `seq 1 2`; echo "hi"; done Я уверен, что это действительно соответствует цели. Я просто хочу учиться.
76 bash  shell  for 

4
В bash возможно ли использовать целочисленную переменную в цикле управления цикла for?
У меня есть следующий скрипт bash: #!/bin/bash upperlim=10 for i in {0..10} do echo $i done for i in {0..$upperlim} do echo $i done Первый forцикл ( без переменной upperlimв контроле цикла) работает нормально, а второй forцикл ( с переменной upperlimв контроле цикла) - нет. Есть ли способ, которым я …
65 bash  shell  shell-script  for 

4
Как заменить AND (&&) в цикле for?
Я хотел бы найти эквивалент cmd 1 && cmd 2 && ... && cmd 20 но с командами, выраженными внутри forцикла, как for i in {1..20} do cmd $i done Что бы вы предложили изменить во втором выражении, чтобы найти эквивалент первого?

3
В сценарии оболочки bash, написание цикла for, который перебирает строковые значения
В bash я знаю, что можно написать forцикл, в котором некоторая переменная управления цикла iперебирает заданные целые числа. Например, я могу написать скрипт оболочки bash, который печатает целые числа от 1 до 10: #!/bin/bash for i in {1..10} do echo $i done Можно ли вместо этого перебрать переменную управления циклом, …
24 bash  shell-script  for 

4
Как избежать ошибок из-за нерасширенной звездочки
В bash я часто использую циклы for, такие как for file in *.type; do sommecommand "$file"; done; выполнить операцию для всех подходящих файлов *.type. Если в рабочих каталогах не найдено ни одного файла с таким окончанием, звездочка не раскрывается, и обычно я получаю сообщение об ошибке, в котором говорится, что …
16 bash  wildcards  for 

4
Перебрать папку и список файлов
У меня есть папка с именем sample и в ней 3 файла. Я хочу написать скрипт оболочки, который будет читать эти файлы в папке с образцами и публиковать их на сайте HTTP с помощью curl. Я написал следующее для перечисления файлов внутри папки: for dir in sample/*; do echo $dir; …

4
$ {! FOO} и zsh
${!FOO}выполняет двойную подстановку bash, то есть принимает (строковое) значение FOO и использует его в качестве имени переменной. zshне поддерживает эту функцию. Есть ли способ сделать эту работу такой же в bashи zsh? Фон: У меня есть список переменных среды, как PATH MAIL EDITOR и хотите сначала вывести имена переменных, а …

3
Многовариантный для циклов
Есть ли способ указать несколько переменных (не только целые числа) в forциклах в bash? У меня может быть 2 файла, содержащие произвольный текст, с которым мне нужно было бы работать. Что мне функционально нужно, так это: for i in $(cat file1) and j in $(cat file2); do command $i $j; …

4
Перебирать файлы, исключая каталоги
Мне нужен мой скрипт, чтобы что-то делать с каждым файлом в текущем каталоге, исключая любые подкаталоги. Например, в текущем пути есть 5 файлов, но 1 из них является папкой (подкаталогом). Мой скрипт должен активировать команду, указанную в качестве аргумента при запуске указанного скрипта. Т.е. "bash script wc -w" должен давать …
11 bash  for 



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

2
Bash: несколько для циклов в фоновом режиме
Это правильный способ запустить несколько последовательных обработок в фоновом режиме? for i in {1..10}; do for j in {1..10}; do run_command $i $j; done & done; Все jдолжны быть обработаны после друг друга для данного i, но все iдолжны быть обработаны одновременно.

1
для цикла не работает в Bash
У меня есть код ниже, чтобы заменить некоторые strigns в нескольких файлах, но цикл for проверяет первый файл и не выполняет сценарий perl. ниже мой код if [ -f zebu.work.post_opt/ZEBU_CTO_FT_MOD.v ] then for file in $(./zebu.work.post_opt/ZEBU_CTO_FT_MOD*); do perl -i -p -e 's/input/inout/g' $file; perl -i -p -e 's/output/inout/g' $file; perl …
7 bash  for 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.