LINUX.ORG.RU
ФорумTalks

GNU/Linux vs KISS

 


0

2

Безусловно, среди классических юниксовых утилит есть такие, какие сложно написать, не соответствующими KISS, например cat, ls.

Но буквально шаг в сторону и:

Команда поиска выглядит так:

find . -iname smth 2>/dev/null

Вопрос - зачем такие заклинания? Сравните с fd:

fdfind -gH smth .

Проще же в разы.

adduser – это вообще финиш. Команда требует ввести КОМНАТУ, почту, телефон… Где тут KISS, алё.

Кстати, юниксовый принцип «всё есть файл» - враньё. Учётка пользователя - это не файл. Почему-то. Хз почему.

Тоже касается man, nano, vim…

Хоть что-то из чуть-чуть сложных, хоть чуть-чуть сложнее cat, обычных утилит/программ линукса следует KISS ?

★★★★★
Ответ на: комментарий от skiminok1986

Джуны могут так писать вполне. Мидлы уже не должны.

Это общие «наукоемкие» слова. Конкретики нет. Вся критика основана на том, что в утилиту добавлена возможность поиска по крайнему расширению файла.

Утилита работает удивительно быстро. Имеет достойную документацию. Пользуется популярностью.

Только что я протестирова утилиту, ошибок в работе не обнаружил. Скоростью работы более чем удовлетворен.

lbvf50txt
()
Ответ на: комментарий от lbvf50txt

Крайний индекс

по крайнему расширению файла

Человек, не рискующий постоянно своей жизнью, но постоянно пишущий/говорящий «крайний» вместо «последний» априори не может быть в адеквате :)

Dimez ★★★★★
()
Ответ на: комментарий от Dimez

априори не может быть в адеквате :)

Модератор набрасывающий и переходящий на личности адекватно выполняет свои обязанности?

lbvf50txt
()
Ответ на: комментарий от lbvf50txt

Ну вот и аргумент «нет ты» подъехал :)

Dimez ★★★★★
()
Ответ на: комментарий от lbvf50txt

Это общие «наукоемкие» слова.

Это совершенно не наукоёмкие слова.

Конкретики нет.

Конкретика вполне себе есть. Достаточно научиться читать. Не учитывается реальный мир в виде отличных от идеальных случаев. Это и называется наивный код.

Вся критика основана на том, что в утилиту добавлена возможность поиска по крайнему расширению файла.

Слово «крайний» не встречается в документации. Додумывать за авторами надо, видимо.

Утилита работает удивительно быстро.

А уж насколько быстро работает locate.

Имеет достойную документацию.

Не соответствующую действительности, как мы только что выяснили.

Пользуется популярностью.

Что только не пользуется популярностью. Начиная с оффтопика, заканчивания исполнителями, которых крутят на FM-радиостанциях.

Только что я протестирова утилиту, ошибок в работе не обнаружил.

Значит Вы, написав «Манчестер», имеете в виду тот же «Ливерпуль», что и авторы утилиты.

Скоростью работы более чем удовлетворен.

Замечательно.

skiminok1986 ★★★★★
()
Ответ на: комментарий от skiminok1986

В проекте gh есть три файла с расширением *.proto.mock.go. Сейчас я попробую их найти при помощи fdfind -e 'proto.mock.go'.

$ fdfind -e 'proto.mock.go'
internal/codespaces/rpc/codespace/codespace_host_service.v1.proto.mock.go
internal/codespaces/rpc/jupyter/jupyter_server_host_service.v1.proto.mock.go
internal/codespaces/rpc/ssh/ssh_server_host_service.v1.proto.mock.go

$ fdfind -e proto.mock.go
internal/codespaces/rpc/codespace/codespace_host_service.v1.proto.mock.go
internal/codespaces/rpc/jupyter/jupyter_server_host_service.v1.proto.mock.go
internal/codespaces/rpc/ssh/ssh_server_host_service.v1.proto.mock.go

Все прекрасно работает fdfind -e 'proto.mock.go' и
fdfind -e proto.mock.go.


Анализ файлов проекта gh при помощи Nushell.

# Nushell select files with doubled extensions. From the gh project.
# https://github.com/cli/cli
~/tmp/cli> let files = ls ...(glob **/*) | uniq
~/tmp/cli> let files = $files |  where name !~ '.*\.git.*' | where type == file 
~/tmp/cli> let files = $files | where name =~ '\.[a-z0-9]{2,7}\.[a-z0-9]{2,7}$'
~/tmp/cli> let files = $files | get name | each { str substring 25..-1}
~/tmp/cli> $files | wrap name | where name =~ 'proto\.mock\.go$'

╭───┬──────────────────────────────────────────────────────────────────────────────╮
│ # │                                     name                                     │
├───┼──────────────────────────────────────────────────────────────────────────────┤
│ 0 │ internal/codespaces/rpc/codespace/codespace_host_service.v1.proto.mock.go    │
│ 1 │ internal/codespaces/rpc/ssh/ssh_server_host_service.v1.proto.mock.go         │
│ 2 │ internal/codespaces/rpc/jupyter/jupyter_server_host_service.v1.proto.mock.go │
╰───┴──────────────────────────────────────────────────────────────────────────────╯
lbvf50txt
()
Последнее исправление: lbvf50txt (всего исправлений: 2)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)