POSIX является акронимом для Интерфейса Переносимой информационной системы, семейства стандартов, указанных IEEE для поддержания совместимости между операционными системами.
POSIX является семейством стандартов, которые указывают поведение подобных Unix операционных систем.
Эти стандарты определяют:
- Стандартный интерфейс операционной системы и среда.
- Программирование API для языка программирования C.
- Поведение интерпретатора команд (или оболочка).
- Поведение общих утилит, invocable от оболочки.
Стандарты POSIX разрабатываются Austin Group, спонсируемой Портативным Комитетом по Стандартам Приложения IEEE.
Текущий набор стандартов POSIX доступен онлайн.
Вот что я использую сейчас, чтобы выполнить работу: #!/bin/sh -- string='Aa1!z' if ! printf '%s\n' "$string" | LC_ALL=C grep -q '[[:upper:]]' || \ ! printf '%s\n' "$string" | LC_ALL=C grep -q '[[:...
20.11.2019
Многие люди используют однострочники и скрипты, содержащие код типа cat "$MYFILE" | команда1 | command2 > "$OUTPUT" Первый кот часто называют "бесполезным использованием кота", потому что технически он...
11.04.2019
Цель этого вопроса - ответить на любопытство, а не решить конкретную вычислительную проблему. Возникает вопрос: почему обязательные утилиты POSIX обычно не встраиваются в реализации оболочки? ...
24.02.2017
Я хочу проверить, содержит ли переменная shell абсолютный путь. Меня не волнует, существует ли путь или нет - если нет, я его создам, но я хочу убедиться, что имею дело с абсолютным ...
20.01.2016
Я вижу, что могу сделать, $ [-w/home/durrantm] && отзываются эхом "перезаписываемый" перезаписываемый, или $ тестируют-w/home/durrantm &&, отзываются эхом "перезаписываемый" перезаписываемый или $ [[-w/home/durrantm]] &
19.11.2014
#!/бин/ш эхо "Шум $1" эхо "Улучшение $2" для snr в 0 5 10 15 20 25 do python Assessment.py --шум $1 --snr 25 --итераций 1250 --улучшение $2 done Если $2 не указано, я не хочу...
19.01.2020
Иногда я должен указать "эквивалентный пути" из одного из стандартных потоков IO (stdin, stdout, stderr). С 99% времени я работаю с Linux, я просто предварительно ожидаю/dev/для получения/dev/stdin, и т.д....
15.03.2018
Существует ли официальное руководство POSIX, GNU или другое руководство о том, где отчеты о ходе выполнения и информация о журналах ( такие вещи, как «Doing foo; foo done») должны быть напечатаны? Лично я предпочитаю писать их на stderr ...
13.04.2017
Я могу сделать это, вызвав внешнюю утилиту sed (для известной непустой переменной $ myvar) следующим образом: if ["$ (printf% s" $ myvar "| sed -n '$ = ') "-экв 1]; затем echo "Ваша переменная имеет только одну строку, продолжение"
...
20.04.2016
Я хотел бы понять термин "системный вызов". Я знаком, что системные вызовы используются для получения сервисов ядра от приложения пространства пользователя. Разъяснение потребности первой части с является различием...
18.04.2014
Таким образом, я использовал 'sed' на Linux некоторое время, но испытал немного затруднений при попытке использовать его на OSX, так как 'POSIX sed' и 'GNU sed' имеют столько небольших различий. В настоящее время я борюсь с...
18.10.2012
кошка a> b и CP b, Если они - функционально то же, во всех отношениях, какой быстрее?
30.06.2012
В спецификации POSIX sed можно найти следующее утверждение (выделено мной): Управляющая последовательность '\n' должна соответствовать <переводу строки>, встроенному в шаблон космос. Литерал <новая строка> должен ...
08.03.2020
У меня есть уцененный документ myfile.md со списком английских предложений, в которых некоторые первые буквы строчные, а некоторые прописные.
Все английские предложения начинаются со стандартных английских букв; ...
12.12.2019
Мне часто нужно, чтобы имя для входа было связано с идентификатором пользователя, и поскольку это оказалось распространенным вариантом использования, я решил написать функцию оболочки для сделай это. Хотя я в основном использую GNU/Linux...
12.09.2019
#! / Bin / sh - expression_to_evaluate = '12 + 3 'printf'% s \ n '"Арифметическое расширение: $ (( $ expression_to_evaluate)) "printf '% s' 'bc:'
printf '% s \ n'" $ expression_to_evaluate "| bc printf '% s' 'awk:' ...
02.03.2019
Как я могу определить разницу между нулевым и \ n при чтении одного символа? Например: f () {read -rn 1 -p "Введите символ:" char && printf "\ nВы ввели '% s' \ n" "$ ...
01.08.2017
Если оболочку просят работать, вероятно, бесполезный (или частично бесполезный) управляют известный завершиться, такие как кошка hugeregularfile.txt>/dev/null, может она пропускать выполнение той команды (или выполняться...
23.05.2017
Я могу записать $VAR1 VAR=, которым $VAR1 {VAR1} VAR =" $ VAR=" VAR =" $ {VAR1}" конечный результат мне весь кажется о том же. Почему я должен записать один или другой? разве какой-либо из них не является портативным / POSIX?
28.03.2011
Недавно я был удивлен, узнав, что POSIX список коммунальных услуг не включает столбец полезность. column впервые появился еще в 4.3BSD, и это довольно полезно. Есть ли POSIX...
02.08.2020
Я только что просмотрел официальный реестр продуктов, сертифицированных для UNIX, Open Group, и в нем не указана ни одна система, которая должна быть зарегистрирована для торговой марки UNIX V7.
Тем не менее, я помнил, что Oracle...
07.05.2020
согласно справочным страницам test(1): -n STRING the длина STRING не равна нулю, поэтому я ожидал, что это будет работать нормально: [ -n ${var} ] && echo "var is not empty" Я использовал это ...
18.02.2020
Можно ли получить время модификации файла из оболочки, используя только функции POSIX? В идеале в метке времени unix (секунды). Все, что мне удалось найти, было с помощью stat(1), но, похоже, это не так...
13.01.2020
Я знаю, что можно перевернуть "$@" с помощью массива: arr=( "$@" ) И используя этот ответ, перевернуть массив. Но для этого требуется оболочка с массивами. Также можно использовать tac: set -- $...
07.01.2020
В POSIX процессы «связаны» друг с другом через две основные иерархии: Иерархия родительских и дочерних процессов.
Иерархия сеансов и групп процессов. Пользовательские процессы имеют большое ...
05.10.2019
Я обнаружил, что это позволяет пользователю вводить данные из командной строки. Но он не распознает новые символы строки, которые я ввожу на входе. Делаем: #!/bin/bash
read -e -p "Многострочный ввод =" переменная;
...
27.06.2019
Я хочу перенаправить вывод команды (в данном случае diff) в файл, но только если есть разница в сравниваемых файлах. Например, представьте, что у меня есть три файла a, b и c, где a и b равны ...
14.06.2019
Полагая, что POSIX является самой близкой вещью к единому стандарту среди всех нельдов, я интересуюсь знанием, если существует оболочка, которая поддерживает его исключительно. В то время как большинство современных оболочек оказывает поддержку...
08.06.2018
В posix-совместимый способ, который работает с несколькими реализациями, как я могу распечатать список текущих определенных переменных среды без их значений? В некоторых реализациях (mksh, freebsd /...
23.04.2018
Стандарт IEEE 1003.13-2003 определяет набор профилей POSIX для систем реального времени. PSE51 - один из таких профилей. Я изучаю PSE51 и думаю, было бы очень полезно, если бы у меня был доступ к ...
19.03.2018