Size: a a a

2020 December 14

F

Fljúgandi Kettlingur... in pro.bash
🌚 YupiRex
q="" и unset q — разное
bash is fun~$ unset a
bash is fun~$ echo "${a+x}"

bash is fun~$ a=""
bash is fun~$ echo "${a+x}"
x
источник

F

Fljúgandi Kettlingur... in pro.bash
да, и что?
источник

🌚

🌚 YupiRex in pro.bash
🌚 YupiRex
[  grep 'text' file ] && echo ok — ✅
[ -n "$(grep 'text' file)" ]  && echo ok — ❌
если оно не найдет строку и выдаст  ошибку об отсутствии, то строка не пустая будет
источник

🌚

🌚 YupiRex in pro.bash
unset q; [ $q ]; echo $?; q=""; [ $q ]; echo $?; unset q; [ "$q" == "" ]; echo $?; q=""; [ "$q" == "" ]; echo $?
источник

F

Fljúgandi Kettlingur... in pro.bash
🌚 YupiRex
unset q; [ $q ]; echo $?; q=""; [ $q ]; echo $?; unset q; [ "$q" == "" ]; echo $?; q=""; [ "$q" == "" ]; echo $?
вот более читаемый вид:
unset q; [ $q ]; echo "unset variable, [ \$q ]: $?"; q=""; [ $q ]; echo "null variable, same: $?";  unset q; [ "$q" == "" ]; echo "unset variable, uquals to empty: $?";  q=""; [ "$q" == "" ]; echo "empty equals empty: $?"
источник
2020 December 16

ł

łibfitź.r13.a in pro.bash
Оффтоп. У меня в ссш-агенте с десяток ключей лежит. Часто при коннекте к хостам ловлю too many authentication failures из-за этого. Если сделать чистый агент с одним нужным ключом, или прибить ключ к хосту в ссш конфиге - все нормально. Указывать через -i нужный ключ не помогает. Как можно облегчить себе жизнь?
источник

OM

Oleg Makarikhin in pro.bash
łibfitź.r13.a
Оффтоп. У меня в ссш-агенте с десяток ключей лежит. Часто при коннекте к хостам ловлю too many authentication failures из-за этого. Если сделать чистый агент с одним нужным ключом, или прибить ключ к хосту в ссш конфиге - все нормально. Указывать через -i нужный ключ не помогает. Как можно облегчить себе жизнь?
секции Host в ~/.ssh/config
источник

OM

Oleg Makarikhin in pro.bash
хтя если IdentityFile  не помогает то и конфиг не поможет
источник

ł

łibfitź.r13.a in pro.bash
Сейчас так и делаю, но это слегка муторно и на -дцатом хосте за пару недель надоело. IdentityFile не помогает без IdentitiesOnly
источник
2020 December 18

A

Alexandr in pro.bash
Всем привет, такой вопрос по shell, вот код:
for i in ls *.zip
do
 unzip $i
 /home/ubuntu/snap/bin/gpt /home/ubuntu/check/lst3.xml -Pinput1=$i
done

там где ключ -Pinput1=$i , я получаю полное название файла с расширением .zip мне нужно заменить это расширение на .SEN3, как это сделать правильно ?
источник

Лс

Лень с Самосознанием... in pro.bash
Alexandr
Всем привет, такой вопрос по shell, вот код:
for i in ls *.zip
do
 unzip $i
 /home/ubuntu/snap/bin/gpt /home/ubuntu/check/lst3.xml -Pinput1=$i
done

там где ключ -Pinput1=$i , я получаю полное название файла с расширением .zip мне нужно заменить это расширение на .SEN3, как это сделать правильно ?
Ужас
источник

A

Alexandr in pro.bash
?
источник

Лс

Лень с Самосознанием... in pro.bash
Alexandr
Всем привет, такой вопрос по shell, вот код:
for i in ls *.zip
do
 unzip $i
 /home/ubuntu/snap/bin/gpt /home/ubuntu/check/lst3.xml -Pinput1=$i
done

там где ключ -Pinput1=$i , я получаю полное название файла с расширением .zip мне нужно заменить это расширение на .SEN3, как это сделать правильно ?
find -name "*.zip" --exec "unzip %f; lst3.xml -Pinput1=$(echo %f | sed 's/zip/SEN3/')
источник

Лс

Лень с Самосознанием... in pro.bash
Перебор циклом ls это ужас
источник

A

Alexandr in pro.bash
Лень с Самосознанием
Перебор циклом ls это ужас
первый опыт с shell )))
источник

Лс

Лень с Самосознанием... in pro.bash
Лень с Самосознанием
find -name "*.zip" --exec "unzip %f; lst3.xml -Pinput1=$(echo %f | sed 's/zip/SEN3/')
*не факт что работает, я не помню наизусть синтаксиса замен в find
источник

🌚

🌚 YupiRex in pro.bash
Alexandr
Всем привет, такой вопрос по shell, вот код:
for i in ls *.zip
do
 unzip $i
 /home/ubuntu/snap/bin/gpt /home/ubuntu/check/lst3.xml -Pinput1=$i
done

там где ключ -Pinput1=$i , я получаю полное название файла с расширением .zip мне нужно заменить это расширение на .SEN3, как это сделать правильно ?
for i in *.zip; do Pinput1=${i/.zip/.SEN3}; echo $Pinput1; done
источник

🌚

🌚 YupiRex in pro.bash
🌚 YupiRex
for i in *.zip; do Pinput1=${i/.zip/.SEN3}; echo $Pinput1; done
не правильное решение, так корректнее  
for i in *.zip; do Pinput1=${i/%.zip/.SEN3}; echo $Pinput1; done
источник

A

Alexandr in pro.bash
${i%.*}.SEN3 вот так заработало, если что
источник

🌚

🌚 YupiRex in pro.bash
Alexandr
${i%.*}.SEN3 вот так заработало, если что
Получить длину строки:
${#string}
Извлечение подстроки:
С position до конца
${string:position}
С position длиной length символов
${string:position:length}
Последние length символов
${string: -length}
Удаление части строки
До первого с начала
${string#substring}
До последнего с начала
${string##substring}
До первого с конца
${string%substring}
До последнего с конца
${string%%substring}
Замена подстроки
Первое вхождение
${string/substring/replacement}
Все вхождения
${string//substring/replacement}
Если в переменной var найдено совпадение с Pattern, причем совпадающая подстрока расположена в начале строки (префикс), то оно заменяется на Replacement. Поиск ведется с начала строки:
${var/#Pattern/Replacement}
Если в переменной var найдено совпадение с Pattern, причем совпадающая подстрока расположена в конце строки (суффикс), то оно заменяется на Replacement. Поиск ведется с конца строки:
${var/%Pattern/Replacement}
источник