Size: a a a

2021 January 28

🌚

🌚 YupiRex in pro.bash
∀lǝxǝʎ
1 вместо 0, видимо, в данном кейсе?
Не понял о чём речь
источник

∀lǝxǝʎ in pro.bash
🌚 YupiRex
Не понял о чём речь
писать ((j=1; j<$1; j++)) вместо менее очевидного ((j=0; j++<$1;))
источник

∀lǝxǝʎ in pro.bash
сорян, не прав
источник

∀lǝxǝʎ in pro.bash
они по разному сработают
источник

🌚

🌚 YupiRex in pro.bash
∀lǝxǝʎ
писать ((j=1; j<$1; j++)) вместо менее очевидного ((j=0; j++<$1;))
Ну я там по разному писал
источник

∀lǝxǝʎ in pro.bash
∀lǝxǝʎ
писать ((j=1; j<$1; j++)) вместо менее очевидного ((j=0; j++<$1;))
но от этого стало ещё менее очевидно
источник

∀lǝxǝʎ in pro.bash
∀lǝxǝʎ
писать ((j=1; j<$1; j++)) вместо менее очевидного ((j=0; j++<$1;))
<= тогда надо что бы аналогично стало (не проверял)
источник

∀lǝxǝʎ in pro.bash
∀lǝxǝʎ
а вот эту мысль в тоннах циклов не понял, давай пример на одном(двух)
ладно, мне сам вопрос был интересен, что не так-то?
источник

🌚

🌚 YupiRex in pro.bash
щас более очевидно опишу
источник

∀lǝxǝʎ in pro.bash
и да, то что переменные не объявлены внутри функций local это намеренно? Или как раз это и есть ошибка?
источник

🌚

🌚 YupiRex in pro.bash
#!/usr/bin/bash

for ((i=0; i<2; i++)); do
       for ((i=0; i<2; i++)); do
               echo -
       done
done

for i in $(seq 1 2); do
       for ((i=0; i<2; i++)); do
               echo --
       done
done
источник

🌚

🌚 YupiRex in pro.bash
переменные без local - скорее упущение
источник

∀lǝxǝʎ in pro.bash
а ну потому что понятна же разница
источник

∀lǝxǝʎ in pro.bash
🌚 YupiRex
#!/usr/bin/bash

for ((i=0; i<2; i++)); do
       for ((i=0; i<2; i++)); do
               echo -
       done
done

for i in $(seq 1 2); do
       for ((i=0; i<2; i++)); do
               echo --
       done
done
Сишные for каждый раз условие проверяет, а обычные bash'овый сначала раскрывает список делает всякие word splitting и path glob expansion'ы, а потом уже просто итерируется по словам
источник

∀lǝxǝʎ in pro.bash
и ему пофиг что переменную засрали ниже он на новом витке цикла просто проставит ей значение очередного слова
источник

🌚

🌚 YupiRex in pro.bash
for ((i=0; i<2; i++)); do
       for ((j=0; j<2; i++)); do
               echo -
       done
done

ну если разные то все ок, именно это меня и удивило
источник

∀lǝxǝʎ in pro.bash
кстати, вместо local немного удобнее использовать declare потому что тогда код можно скопировать вне функции и declare продолжит работать, а вот local вне тела функции это синтаксическая ошибка
источник

🌚

🌚 YupiRex in pro.bash
#!/usr/bin/bash

for ((i=0; i<2; i++)); do
       echo $i
done

for ((i=0; i++<2;)); do
       echo $i
done

в первом случае при первой проверке i равно 0 и в цикле тоже 0,
во втором случае при первой проверке i равно 0, но в цикле уже 1
источник

ł

łibfitź.r13.a in pro.bash
Подскажите, а как бы заменить первую строку в файле? Пробую седом, не получается
$ export pp=$(command -v python)
$ sed -i "1s/.*/$pp/" file
sed: -e expression #1, char 8: unknown option to `s'
источник

V

Vikentsi in pro.bash
łibfitź.r13.a
Подскажите, а как бы заменить первую строку в файле? Пробую седом, не получается
$ export pp=$(command -v python)
$ sed -i "1s/.*/$pp/" file
sed: -e expression #1, char 8: unknown option to `s'
а в  $pp точно что-то есть?
источник