Наборы тестов для утилит (cat, cp и т. д.) Linux или BSD?

: — это команда, поэтому ее можно использовать в конвейере, как и все остальное:

something | :
: | something
something | : | something-else

...но это не принесет вам никакой пользы, так как команда :ничего не делает :она не принимает ввод и не производит вывод. Поэтому ни один из них не является очень полезным конвейером (, за исключением того, что второй, как я полагаю, является немного более короткой альтернативойsomething </dev/null).

Что касается ваших примеров команд:

$ : { echo hello | cat; }

Это похоже на синтаксическую ошибку, как и сообщает оболочка. Конструкцию {... }можно использовать вместо простой команды, но нельзя как-то... в сочетании (? )с ним. Что именно вы ожидаете от этой составной команды? Возможно, вам нужно добавить больше деталей о том, чего вы пытаетесь достичь.

3
19.07.2019, 03:27
2 ответа

Наборы тестов POSIX обеспечивают полное покрытие стандартных утилит ,что не будет всем в /binна большинстве систем. Однако он будет охватывать все перечисленные вами инструменты. Помимо охвата только стандартных утилит, пакет будет охватывать только их определенное поведение, а любые расширения выше POSIX в лучшем случае будут игнорироваться ().

Вам нужен пакет VSC «для оболочки и утилит», а не пакет для системных интерфейсов. Они доступны за плату для лицензиатов товарных знаков, но вы можете получить временную -ограниченную лицензию в качестве проекта с открытым -исходным кодом, реализующего стандарт бесплатно с , что не выглядит обременительным лицензионным соглашением .

Существуют открытые наборы для большей части системных интерфейсов, но я не знаю ни одного для утилит (, а наборы , о которых я знаю довольно устарели как хорошо ).

4
27.01.2020, 21:13

В GNU/Linux эти утилиты являются частью coreutils , набор тестов можно найти в исходном репозитории в tests.

Примечание. :Linux — это только ядро, остальная часть системы разрабатывается другими организациями, такими как GNU .

GNU is an operating system that is free software...consists of GNU packages (programs specifically released by the GNU Project) as well as free software released by third parties.

В BSD вся операционная система разрабатывается вместе в одном репозитории.

Для OpenBSD, похоже, нет никаких тестов для этих утилит в их исходном репозитории .

2
27.01.2020, 21:13

Теги

Похожие вопросы