LINUX.ORG.RU

История изменений

Исправление lbvf50txt, (текущая версия) :

Выше по треду уже определились, что с расширениями gh работает некорректно.

Наверное вы опечатались и перепутали утилиты gh и fd. Давайте проверим работает ли утилита fd некорректно.

Провиерил fd работает с поиском корректно. Далее.

P.S. Во время поиска через fdfind и фильтрации вывода ls в Nushell у меня было разночтение в 1 файл. Это происходило потому, что я ленился узнать length и просто читал последний индекс таблицы воспринимая его за количество.

# Nushell

~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$' | length

736


Шаг 1. Установим саму утилиту.

nala install fd-find

В моей система утилита fd называется fdfind.

nala show fd-find

...

 Please note: the executable and the associated manpage were renamed
 from ‘fd’ to ‘fdfind’ because of a file name clash.

Шаг 2. Перейу в каталог с утилитой gh.

GNU/Linux vs KISS (комментарий)

В этом каталоге я проводил анализ количества файлов с расширениями.

$ cd tmp/cli

Шаг 3. Проверка количества файлов с расширением *.go в проекте gh.

# Nushell
~/tmp/cli> $files |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

1471 крайний индекс.

fdfind  -e go | wc -l

736 строк! Ого. Неужели и в правду косячит fd? А есил убрать дубликаты из $files?

# Nushell
~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

Крайний индекс 735, всего 736 файлов.

Хорошо.

Шаг 4. Количество *.yml файлов.

fdfind -e yml

pkg/cmd/extension/ext_tmpls/goBinWorkflow.yml
pkg/cmd/extension/ext_tmpls/otherBinWorkflow.yml

Дает два файла.

А через Nushell фильтрацию 4 файла.

# Nushell
$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.yml$'

Включает в себя файлы начинающиеся с точки .golangci.yml и .goreleaser.yml.

Занчит надо читать документацию и скать со скрытыми файлами.

fdfind -H -I -e yml | wc -l

Поулчаем 14 файлов ищет еще и в .github.

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

Шаг 5. Поиск файлов .txtar

$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$'

71 крайней индекс, всего 72 элемента.

fdfind -I -e txtar | wc -l
72

72 строки

Ищем разницу. Экспоритруем вывод в файл .~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list.

fdfind -I -e txtar | sort > ~/tmp/nu/txtar.list
# Nushell
~/tmp/cli> let $txtar = $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$' | select name | sort-by name | get name
~/tmp/cli> $txtar |  each {  str substring 25..-1 } | save -f ~/tmp/nu/txtar_nu.list

Файлы совпадают, отсортировались по разному

 diff ~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list
16d15
< acceptance/testdata/project/project-create-delete.txtar
18d16
< acceptance/testdata/pr/pr-checkout.txtar
19a18
> acceptance/testdata/pr/pr-checkout.txtar
35a35
> acceptance/testdata/project/project-create-delete.txtar

А-а-а-а-а. Точно в Nushell индексация начинается с 0 😀!

Исправление lbvf50txt, :

Выше по треду уже определились, что с расширениями gh работает некорректно.

Наверное вы опечатались и перепутали утилиты gh и fd. Давайте проверим работает ли утилита fd некорректно.

Провиерил fd работает с поиском корректно. Далее.


Шаг 1. Установим саму утилиту.

nala install fd-find

В моей система утилита fd называется fdfind.

nala show fd-find

...

 Please note: the executable and the associated manpage were renamed
 from ‘fd’ to ‘fdfind’ because of a file name clash.

Шаг 2. Перейу в каталог с утилитой gh.

GNU/Linux vs KISS (комментарий)

В этом каталоге я проводил анализ количества файлов с расширениями.

$ cd tmp/cli

Шаг 3. Проверка количества файлов с расширением *.go в проекте gh.

# Nushell
~/tmp/cli> $files |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

1471 крайний индекс.

fdfind  -e go | wc -l

736 строк! Ого. Неужели и в правду косячит fd? А есил убрать дубликаты из $files?

# Nushell
~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

Крайний индекс 735, всего 736 файлов.

Хорошо.

Шаг 4. Количество *.yml файлов.

fdfind -e yml

pkg/cmd/extension/ext_tmpls/goBinWorkflow.yml
pkg/cmd/extension/ext_tmpls/otherBinWorkflow.yml

Дает два файла.

А через Nushell фильтрацию 4 файла.

# Nushell
$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.yml$'

Включает в себя файлы начинающиеся с точки .golangci.yml и .goreleaser.yml.

Занчит надо читать документацию и скать со скрытыми файлами.

fdfind -H -I -e yml | wc -l

Поулчаем 14 файлов ищет еще и в .github.

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

Шаг 5. Поиск файлов .txtar

$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$'

71 крайней индекс, всего 72 элемента.

fdfind -I -e txtar | wc -l
72

72 строки

Ищем разницу. Экспоритруем вывод в файл .~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list.

fdfind -I -e txtar | sort > ~/tmp/nu/txtar.list
# Nushell
~/tmp/cli> let $txtar = $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$' | select name | sort-by name | get name
~/tmp/cli> $txtar |  each {  str substring 25..-1 } | save -f ~/tmp/nu/txtar_nu.list

Файлы совпадают, отсортировались по разному

 diff ~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list
16d15
< acceptance/testdata/project/project-create-delete.txtar
18d16
< acceptance/testdata/pr/pr-checkout.txtar
19a18
> acceptance/testdata/pr/pr-checkout.txtar
35a35
> acceptance/testdata/project/project-create-delete.txtar

А-а-а-а-а. Точно в Nushell индексация начинается с 0 😀!

Исправление lbvf50txt, :

Выше по треду уже определились, что с расширениями gh работает некорректно.

Наверное вы опечатались и перепутали утилиты gh и fd. Давайте проверим работает ли утилита fd некорректно.

Провиерил fd работает с поиском корректно. Далее.


Шаг 1. Установим саму утилиту.

nala install fd-find

В моей система утилита fd называется fdfind.

nala show fd-find

...

 Please note: the executable and the associated manpage were renamed
 from ‘fd’ to ‘fdfind’ because of a file name clash.

Шаг 2. Перейу в каталог с утилитой gh.

GNU/Linux vs KISS (комментарий)

В этом каталоге я проводил анализ количества файлов с расширениями.

$ cd tmp/cli

Шаг 3. Проверка количества файлов с расширением *.go в проекте gh.

# Nushell
~/tmp/cli> $files |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

1471 крайний индекс.

fdfind  -e go | wc -l

736 строк! Ого. Неужели и в правду косячит fd? А есил убрать дубликаты из $files?

# Nushell
~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

Крайний индекс 735, всего 736 файлов.

Хорошо.

*Шаг 4. Количество .yml файлов.

fdfind -e yml

pkg/cmd/extension/ext_tmpls/goBinWorkflow.yml
pkg/cmd/extension/ext_tmpls/otherBinWorkflow.yml

Дает два файла.

А через Nushell фильтрацию 4 файла.

# Nushell
$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.yml$'

Включает в себя файлы начинающиеся с точки .golangci.yml и .goreleaser.yml.

Занчит надо читать документацию и скать со скрытыми файлами.

fdfind -H -I -e yml | wc -l

Поулчаем 14 файлов ищет еще и в .github.

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

Шаг 5. Поиск файлов .txtar

$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$'

71 крайней индекс, всего 72 элемента.

fdfind -I -e txtar | wc -l
72

72 строки

Ищем разницу. Экспоритруем вывод в файл .~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list.

fdfind -I -e txtar | sort > ~/tmp/nu/txtar.list
# Nushell
~/tmp/cli> let $txtar = $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$' | select name | sort-by name | get name
~/tmp/cli> $txtar |  each {  str substring 25..-1 } | save -f ~/tmp/nu/txtar_nu.list

Файлы совпадают, отсортировались по разному

 diff ~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list
16d15
< acceptance/testdata/project/project-create-delete.txtar
18d16
< acceptance/testdata/pr/pr-checkout.txtar
19a18
> acceptance/testdata/pr/pr-checkout.txtar
35a35
> acceptance/testdata/project/project-create-delete.txtar

А-а-а-а-а. Точно в Nushell индексация начинается с 0 😀!

Исправление lbvf50txt, :

Выше по треду уже определились, что с расширениями gh работает некорректно.

Наверное вы опечатались и перепутали утилиты gh и fd. Давайте проверим работает ли утилита fd некорректно.

Провиерил fd работает с поиском корректно. Далее.


Шаг 1. Установим саму утилиту.

nala install fd-find

В моей система утилита fd называется fdfind.

nala show fd-find

...

 Please note: the executable and the associated manpage were renamed
 from ‘fd’ to ‘fdfind’ because of a file name clash.

Шаг 2. Перейу в каталог с утилитой gh.

GNU/Linux vs KISS (комментарий)

В этом каталоге я проводил анализ количества файлов с расширениями.

$ cd tmp/cli

*Шаг 3. Проверка количества файлов с расширением .go в проекте gh.

# Nushell
~/tmp/cli> $files |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

1471 крайний индекс.

fdfind  -e go | wc -l

736 строк! Ого. Неужели и в правду косячит fd? А есил убрать дубликаты из $files?

# Nushell
~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

Крайний индекс 735, всего 736 файлов.

Хорошо.

*Шаг 4. Количество .yml файлов.

fdfind -e yml

pkg/cmd/extension/ext_tmpls/goBinWorkflow.yml
pkg/cmd/extension/ext_tmpls/otherBinWorkflow.yml

Дает два файла.

А через Nushell фильтрацию 4 файла.

# Nushell
$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.yml$'

Включает в себя файлы начинающиеся с точки .golangci.yml и .goreleaser.yml.

Занчит надо читать документацию и скать со скрытыми файлами.

fdfind -H -I -e yml | wc -l

Поулчаем 14 файлов ищет еще и в .github.

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

Шаг 5. Поиск файлов .txtar

$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$'

71 крайней индекс, всего 72 элемента.

fdfind -I -e txtar | wc -l
72

72 строки

Ищем разницу. Экспоритруем вывод в файл .~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list.

fdfind -I -e txtar | sort > ~/tmp/nu/txtar.list
# Nushell
~/tmp/cli> let $txtar = $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$' | select name | sort-by name | get name
~/tmp/cli> $txtar |  each {  str substring 25..-1 } | save -f ~/tmp/nu/txtar_nu.list

Файлы совпадают, отсортировались по разному

 diff ~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list
16d15
< acceptance/testdata/project/project-create-delete.txtar
18d16
< acceptance/testdata/pr/pr-checkout.txtar
19a18
> acceptance/testdata/pr/pr-checkout.txtar
35a35
> acceptance/testdata/project/project-create-delete.txtar

А-а-а-а-а. Точно в Nushell индексация начинается с 0 😀!

Исправление lbvf50txt, :

Выше по треду уже определились, что с расширениями gh работает некорректно.

Наверное вы опечатались и перепутали утилиты gh и fd. Давайте проверим работает ли утилита fd некорректно.

Провиерил fd работает с поиском корректно. Далее.


Шаг 1. Установим саму утилиту.

nala install fd-find

В моей система утилита fd называется fdfind.

nala show fd-find

...

 Please note: the executable and the associated manpage were renamed
 from ‘fd’ to ‘fdfind’ because of a file name clash.

Шаг 2. Перейу в каталог с утилитой gh.

GNU/Linux vs KISS (комментарий)

В этом каталоге я проводил анализ количества файлов с расширениями.

$ cd tmp/cli

*Шаг 3. Проверка количества файлов с расширением .go в проекте gh.

# Nushell
~/tmp/cli> $files |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

1471 крайний индекс.

fdfind  -e go | wc -l

736 строк! Ого. Неужели и в правду косячит fd? А есил убрать дубликаты из $files?

# Nushell
~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

Крайний индекс 735, всего 736 файлов.

Хорошо.

*Шаг 4. Количество .yml файлов.

fdfind -e yml

pkg/cmd/extension/ext_tmpls/goBinWorkflow.yml
pkg/cmd/extension/ext_tmpls/otherBinWorkflow.yml

Дает два файла.

А через Nushell фильтрацию 4 файла.

# Nushell
$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.yml$'

Включает в себя файлы начинающиеся с точки .golangci.yml и .goreleaser.yml.

Занчит надо читать документацию и скать со скрытыми файлами.

fdfind -H -I -e yml | wc -l

Поулчаем 14 файлов ищет еще и в .github.

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

Шаг 5. Поиск файлов .txtar

$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$'

71 крайней индекс, всего 72 элемента.

fdfind -I -e txtar | wc -l
72

72 строки

Ищем разницу. Экспоритруем вывод в файл .~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list.

fdfind -I -e txtar | sort > ~/tmp/nu/txtar.list
# Nushell
~/tmp/cli> let $txtar = $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$' | select name | sort-by name | get name
~/tmp/cli> $txtar |  each {  str substring 25..-1 } | save -f ~/tmp/nu/txtar_nu.list

Файлы совпадают, отсортировались по разному

 diff ~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list
16d15
< acceptance/testdata/project/project-create-delete.txtar
18d16
< acceptance/testdata/pr/pr-checkout.txtar
19a18
> acceptance/testdata/pr/pr-checkout.txtar
35a35
> acceptance/testdata/project/project-create-delete.txtar

А-а-а-а-а. Точно в Nushell индексация начинается с 0 :-) !

Исходная версия lbvf50txt, :

Выше по треду уже определились, что с расширениями gh работает некорректно.

Наверное вы опечатались и перепутали утилиты gh и fd. Давайте проверим работает ли утилита fd некорректно.

Провиерил fd работает с поиском корректно. Далее.


Шаг 1. Установим саму утилиту.

nala install fd-find

В моей система утилита fd называется fdfind.

nala show fd-find

...

 Please note: the executable and the associated manpage were renamed
 from ‘fd’ to ‘fdfind’ because of a file name clash.

Шаг 2. Перейу в каталог с утилитой gh.

GNU/Linux vs KISS (комментарий)

В этом каталоге я проводил анализ количества файлов с расширениями.

$ cd tmp/cli

Шаг 3. Проверка количества файлов с расширением *.go в проекте gh.

# Nushell
~/tmp/cli> $files |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

1471 файл.

fdfind  -e go | wc -l

736 строк! Ого. Неужели и в правду косячит fd? А есил убрать дубликаты из $files?

# Nushell
~/tmp/cli> $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.go$'

Крайний индекс 735, всего 736 файлов.

Хорошо.

Шаг 4. Количество *.yml файлов.

fdfind -e yml

pkg/cmd/extension/ext_tmpls/goBinWorkflow.yml
pkg/cmd/extension/ext_tmpls/otherBinWorkflow.yml

Дает два файла.

А через Nushell фильтрацию 4 файла.

# Nushell
$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.yml$'

Включает в себя файлы начинающиеся с точки .golangci.yml и .goreleaser.yml.

Занчит надо читать документацию и скать со скрытыми файлами.

fdfind -H -I -e yml | wc -l

Поулчаем 14 файлов ищет еще и в .github.

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

Шаг 5. Поиск файлов .txtar

$files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$'

71 крайней индекс, всего 72 элемента.

fdfind -I -e txtar | wc -l
72

72 строки

Ищем разницу. Экспоритруем вывод в файл .~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list.

fdfind -I -e txtar | sort > ~/tmp/nu/txtar.list
# Nushell
~/tmp/cli> let $txtar = $files | uniq |  where name !~ '.*\.git.*' | where type == file | where name =~ '\.txtar$' | select name | sort-by name | get name
$~/tmp/cli> $txtar |  each {  str substring 25..-1 } | save -f ~/tmp/nu/txtar_nu.list

Файлы совпадают, отсортировались по разному

 diff ~/tmp/nu/txtar.list ~/tmp/nu/txtar_nu.list
16d15
< acceptance/testdata/project/project-create-delete.txtar
18d16
< acceptance/testdata/pr/pr-checkout.txtar
19a18
> acceptance/testdata/pr/pr-checkout.txtar
35a35
> acceptance/testdata/project/project-create-delete.txtar

А-а-а-а-а. Точно в Nushell индексация начинается с 0 :-) !