Size: a a a

2020 February 08

GG

George Gaál in DevOps
Ведь тот же if [[ ]] - эти скобки на самом деле команда
источник

I

Igor in DevOps
А. Ну ещё важный вопрос: типы в языке должны быть или всё должно быть строкой как в баше?
источник

p

pragus in DevOps
George Gaál
Для адхок вещей - типо загрузиться в систему и починить ее или адхок команды - баш незаменим
баш вполне заменим на zsh/fish/tcsh
источник

GG

George Gaál in DevOps
Igor
А. Ну ещё важный вопрос: типы в языке должны быть или всё должно быть строкой как в баше?
Строка - это проблема.
источник

GG

George Gaál in DevOps
У тебя в языке должно три сущности.
1. stdout
2. stderr
3. ret code
И возможно некий эксепшен, если все сломалось (т.е. какая то отдельная сущность, которую ты сможешь отхендлить в случае проблем)
источник

I

Igor in DevOps
Конкретный пример: ls что должна возвращать? Список строк или список объектов типа Файл?
источник

GG

George Gaál in DevOps
Igor
Конкретный пример: ls что должна возвращать? Список строк или список объектов типа Файл?
Вопрос в чем
источник

GG

George Gaál in DevOps
Мы используем штатный ls
источник

GG

George Gaál in DevOps
Или переищоьретаем свой
источник

ЕО

Евгений Омельченко in DevOps
Igor
Конкретный пример: ls что должна возвращать? Список строк или список объектов типа Файл?
Четвёрку из входного, двух выходных потоков и реткод :)
источник

I

Igor in DevOps
George Gaál
Мы используем штатный ls
Это не только связано с ls. Это значительно завязано на все гнушные утилиты. Они изначально задумывались для баша или sh.
источник

ЕО

Евгений Омельченко in DevOps
Но вообще вопрос "что возвращать" это схоластический вопрос. Он подразумевает, что ты можешь писать a=ls()
источник

I

Igor in DevOps
Евгений Омельченко
Четвёрку из входного, двух выходных потоков и реткод :)
То есть гнушные утилиты все оставляем на месте, объекты не вводим.
источник

ЕО

Евгений Омельченко in DevOps
Конечно, смысл в том, что сделать шел. Нафига мне шел, если я не могу выхлоп kubectl попарсить?
источник

I

Igor in DevOps
Евгений Омельченко
Но вообще вопрос "что возвращать" это схоластический вопрос. Он подразумевает, что ты можешь писать a=ls()
Ну тогда у тебя в переменной а будет находиться не список имен файлов, а список из 3 объектов - реткод, стдаут, стдэрр. Меня, честно говоря, это уже настораживает - типа нафиг мне полный выхлоп, если в данном конкретном контексте очевидно, что нужен список файлов?
источник

GG

George Gaál in DevOps
Igor
Ну тогда у тебя в переменной а будет находиться не список имен файлов, а список из 3 объектов - реткод, стдаут, стдэрр. Меня, честно говоря, это уже настораживает - типа нафиг мне полный выхлоп, если в данном конкретном контексте очевидно, что нужен список файлов?
Эм
источник

GG

George Gaál in DevOps
А если ls упало с сообщением can't find executable?
источник

GG

George Gaál in DevOps
Или abnormal program termination ?
источник

I

Igor in DevOps
Евгений Омельченко
Конечно, смысл в том, что сделать шел. Нафига мне шел, если я не могу выхлоп kubectl попарсить?
Можно сделать иначе - все неизвестные утилиты ведут себя как в шелле, то есть работают со строками и возвращают строки. Все базовые утилиты работают с типизированными переменными, и поддерживают конвертацию их в строки
источник

ЕО

Евгений Омельченко in DevOps
Igor
Можно сделать иначе - все неизвестные утилиты ведут себя как в шелле, то есть работают со строками и возвращают строки. Все базовые утилиты работают с типизированными переменными, и поддерживают конвертацию их в строки
Чтоб постоянно путаться?
источник