Size: a a a

2021 January 16

n

nod in pro.bash
Егоронька
и еще вопросик: я делаю проверку на то, запущен ли скрипт от рута вот так
if [ "$EUID" -ne 0 ]
 then echo "error: you cannot perform this operation unless you are root."
 exit
fi

но ubuntu ругается на неправильный синтаксис, ошибку сказать не могу, было не на моей машине
Синтаксис правильный, всё работает
источник

V

Vikentsi in pro.bash
nod
Синтаксис правильный, всё работает
А под root?
источник

n

nod in pro.bash
Vikentsi
А под root?
Просто с нулём выходит
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
bash

if [[ $EUID -ne 0 ]]; then
 echo ...
 exit 1
fi
А зачем двойные скобки??
источник

∀lǝxǝʎ in pro.bash
Лень с Самосознанием
А зачем двойные скобки??
что бы нормальное поведение было bash'а, а не говняное и древнючее
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
что бы нормальное поведение было bash'а, а не говняное и древнючее
???
Чем тебя test обидел?
источник

∀lǝxǝʎ in pro.bash
Лень с Самосознанием
???
Чем тебя test обидел?
мне реально перечислять всё то что не умеет test (alias [) ?
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
мне реально перечислять всё то что не умеет test (alias [) ?
А что он может не уметь то?
Он же смотрит на коды выхода программ-аргументов, и уже на них строиться логика. Что ещё нужно?
источник

Лс

Лень с Самосознанием... in pro.bash
К этому добавили ещё немного сравнения строк и математики, сделав совсем приятную штуку
источник

∀lǝxǝʎ in pro.bash
сравнивает строки по ascii а не по текущей локали
требует кавычить переменные и даже это не поможет при числовом сравнении
не умеет в сложные условия через && || надо писать -o -a

(по сколько она builtin то всё же некоторые новые доп фичи она тоже получет)
источник

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

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
сравнивает строки по ascii а не по текущей локали
требует кавычить переменные и даже это не поможет при числовом сравнении
не умеет в сложные условия через && || надо писать -o -a

(по сколько она builtin то всё же некоторые новые доп фичи она тоже получет)
А вот первое критично...
А чего не поправят?
источник

∀lǝxǝʎ in pro.bash
Лень с Самосознанием
А вот первое критично...
А чего не поправят?
это как бы не надо править, это просто так
       When used with [[, the < and > operators sort lexicographically using the current locale.  The test command sorts using ASCII ordering.
источник

∀lǝxǝʎ in pro.bash
на самом деле мало кому и когда нужно сравнение/сортировка средствами баша ещё и не ascii символов
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
на самом деле мало кому и когда нужно сравнение/сортировка средствами баша ещё и не ascii символов
Ну... Мне))
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
на самом деле мало кому и когда нужно сравнение/сортировка средствами баша ещё и не ascii символов
источник

Лс

Лень с Самосознанием... in pro.bash
Правда я использую двойные скобки
источник

∀lǝxǝʎ in pro.bash
приведу пример для не понимающих
[22:40:04]alukardd@alex:~$ [ "абв" > "абг" ] && echo больше
больше
[22:40:11]alukardd@alex:~$ [[ "абв" > "абг" ]] && echo больше

первое поведение не ожидаемое, воторое то чего мы ожидаем
источник

Лс

Лень с Самосознанием... in pro.bash
∀lǝxǝʎ
приведу пример для не понимающих
[22:40:04]alukardd@alex:~$ [ "абв" > "абг" ] && echo больше
больше
[22:40:11]alukardd@alex:~$ [[ "абв" > "абг" ]] && echo больше

первое поведение не ожидаемое, воторое то чего мы ожидаем
Я только сейчас понял что можно вот ТАК сравнивать строки...
А... Где таким воспользоваться?
источник

Лс

Лень с Самосознанием... in pro.bash
Кроме какого-то велосипеда вокруг base 16 и тд чисел
источник