1
ответ

Плавающее сравнение POSIX

работа с устаревшей системой, здесь я подключаюсь к sqlplus, чтобы сохранить возвращаемое значение в переменной, и у меня это работает нормально, но проблема со сравнением с плавающими значениями числового/...
28.03.2020
1
ответ

Какие типы текстовых файлов не должны заканчиваться символами новой строки?

Этот вопрос и этот вопрос указывают на то, что обычно стандартом является завершение текстовых файлов символами новой строки для соответствия стандарту POSIX, и это ожидается от инструментов GNU и других ...
21.03.2020
1
ответ

Как в подоболочке получить идентификатор процесса?

Я знаю, что могу получить идентификатор процесса основной оболочки с помощью $$, но как получить PID подоболочки, созданной, например, ( ... ) изнутри блока?
18.03.2020
1
ответ

Как получить PID шелла в пайплайне?

Например, я запускаю sleep 1 | спать 2 | sleep 3 & Как получить идентификаторы процессов каждой части? Я мог бы проверить вывод заданий -l, но его формат может быть подозрительным среди оболочек, и я ищу более простой способ.
18.03.2020
1
ответ

Сценарии оболочки POSIX shebang #!/bin/sh vs #!/usr/bin/env sh, какая разница?

Недавно я заметил, что многие скрипты используют /usr/bin/env в своем шебанге. Я видел это в основном с использованием Bash и Python, но до сих пор никогда в сочетании с POSIX sh (ash, dash,...). Интересно...
04.03.2020
1
ответ

Соединение строк с помощью POSIX sed

Я пытаюсь соединить строки с помощью POSIX sed. С GNU sed (без --posix) это работает так, как задумано: $ sed ':a; Н; с/\п//; б а' <<< $'а\nb\nc' abc Но если я использую --posix, я не получу никакого вывода. Почему...
22.02.2020
1
ответ

Чтение каждой строки файла в переменную

$ IFS= read a b c << 'EOF' > строка 1 > строка 2 > строка 3 > EOF $ printf '<%s> <%s> <%s>\n' "$a" "$b" "$c" <> <> Я хочу, чтобы каждая строка была ...
17.02.2020
1
ответ

Как с помощью POSIX узнать, сколько потоков ЦП у меня есть в сценарии оболочки?

Как с помощью POSIX узнать, сколько потоков ЦП у меня есть в сценарии оболочки? Я знаю, что могу как-то использовать /proc/cpuinfo, но как получить только количество повторяющихся строк, может быть, с помощью grep?
28.01.2020
1
ответ

Способ написания условных операторов, совместимый с POSIX

В bash вы можете сделать, если [ $(echo $UID) != 0 ] затем эхо "Запуск от имени root" выход fi Это возвращает сообщение об ошибке, когда я запускаю сценарий с помощью dash или других оболочек, совместимых с POSIX. Как вы это делаете...
14.01.2020
1
ответ

Как открыть «Руководство программиста Linux» на установленном «Руководстве программиста POSIX»?

Как я могу открыть «Руководство программиста Linux» после установки «Руководства программиста POSIX»? В Ubuntu 18.04 я обычно вижу «Руководство программиста Linux» по команде man. Но я хотел увидеть «POSIX...
28.12.2019
1
ответ

bc: запрещает ли POSIX автономное использование операторов отношения?

Я хочу сравнить два числа с bc. Согласно этому высоко оцененному ответу на StackOverflow, я могу сделать это следующим образом: printf '%s\n' '1.2 > 0.4' | bc bc отправляет 1 в STDOUT, указывая, что ...
23.12.2019
1
ответ

Утилиты Posix отсутствуют?

Я всегда предполагал, что все, что определено в стандарте posix, будет в большинстве распространенных дистрибутивов Linux. Тем не менее, когда я искал, какие утилиты являются стандартными в стандарте posix, я нашел эту страницу ...
20.12.2019
1
ответ

Механизмы поиска (сопоставления) данных являются стандартными, как правило, для всех систем Linux [дубликат]

Меня смущает то, какие механизмы поиска (сопоставления данных) являются стандартными для всех систем Linux, поскольку они могут использоваться практически всеми встроенными оболочками и дополнительные общие утилиты, ...
14.12.2019
1
ответ

Почему каталог /root/ по умолчанию имеет разрешение 700?

Я только что заметил, что /root/ имеет разрешение 700 по умолчанию в Ubuntu, Debian и Nixos. Почему это обрабатывается иначе, чем другие каталоги, например /bin/? Что такого особенного в /...
11.12.2019
1
ответ

Почему большинство дистрибутивов Linux несовместимы с POSIX?

Почему большинство дистрибутивов Linux несовместимы с POSIX? Я видел во многих местах, что они не соответствуют (например, в основном POSIX-совместимые), но не было никакого реального объяснения, подтверждающего это. Есть ли...
06.12.2019
1
ответ

Существуют ли какие-либо утилиты оболочки в современных Unix-подобных операционных системах, которые не могут работать с текстовыми файлами с очень длинными строками?

Можно получить значение LINE_MAX, запустив getconf LINE_MAX. В FreeBSD 12 и Ubuntu 18.04 (и, подозреваю, во многих других) это значение равно 2048 байт. В мире POSIX есть много утилит оболочки...
27.11.2019
1
ответ

передать данные в отдельный дескриптор входного файла дочернего процесса с оболочкой posix

В оболочке posix я хотел бы передать данные в дескриптор файла фонового дочернего процесса и обработать вывод из ребенок в родителях. Пожалуйста, не используйте mkfifo, только стандартный дескриптор файла оболочки posix...
16.11.2019
1
ответ

Какой текущий десятичный разделитель?

Скажем, у меня есть сценарий оболочки POSIX, который нужно запустить в разных системах/средах, которые я не контролирую, и мне нужно удалить десятичный разделитель из строки, созданной программой, которая...
12.09.2019
1
ответ

tempnam() / mkstemp() как API, работающий с файловыми дескрипторами?

Какие существуют альтернативы POSIX без расовой принадлежности? функции семейства mkstemp(3) / tmpnam(3)? Цель состоит, конечно, в том, чтобы получить имя файла для использовать с API-интерфейсами файловых дескрипторов, такими как renameat2(2). ...
10.09.2019
1
ответ

Существует ли оболочка POSIX, которая полностью устраняет необходимость в `cat` и `dd` с помощью операторов на месте?

В записи блога Видара Холена «Бесполезное использование dd» он утверждает, что dd фактически бесполезен, в первую очередь потому, что все является файлом, а файлы могут передаваться по конвейеру. Мы также регулярно наблюдаем во всех *nix...
20.08.2019
1
ответ

Ловушка EXIT с POSIX

У меня есть сценарий, написанный на Bash, который я пытаюсь изменить, чтобы он был совместим с POSIX. Мне удалось заставить все работать, за исключением того, что я не могу заставить ловушку EXIT срабатывать при завершении процесса ...
21.05.2019
1
ответ

posix_spawnp зависает до завершения дочернего процесса в Debian 9

Недавно мы обнаружили интересный случай, когда posix_spawnp зависает до тех пор, пока порожденный им дочерний процесс не завершится в Debian 9. Это не воспроизводится в других дистрибутивах, таких как Ubuntu (18.04) или CentOS ( 7.3). ...
09.05.2019
1
ответ

Не знаю, как определить, работает ли сценарий оболочки в интерактивном режиме

Я хочу только определить по сценарию оболочки POSIX, работает ли он в интерактивном режиме, но по какой-то причине следующее функция: running_interactively () {printf '% s' $ {-} | grep -F i> / dev / ...
19.04.2019
1
ответ

Как узнать, не зная точки монтирования, что UUID устройства смонтирован?

Система: Linux Mint 19.1 Cinnamon 64-бит, на основе Ubuntu 18.04 LTS. Я хотел бы знать, можно ли получить следующую информацию: Этот UUID (блочного устройства) смонтирован или нет? (без ...
01.04.2019
1
ответ

Источник / etc / протоколов и / etc / services?

Эти файлы представляют собой базы данных, которые содержат номера IP-протокола, псевдонимы и сопоставления служб. Как пользователь, я обычно не взаимодействую с ними напрямую, но необходимость создания специального Linux / GNU ...
26.03.2019
1
ответ

Как проверить правильность моего хвоста?

У меня проблемы с интерфейсом vim для средства доказательства теорем HOL: https://github.com/HOL-Theorem-Prover/HOL/tree/master/tools/vim. Я запускаю его на MobaXterm, cygwin- на базе системы, и vim зависает...
18.03.2019
1
ответ

shellcheck: "В POSIX sh, ulimit -H не поддерживается"

Я использую shellcheck для исправления предупреждений в скрипте sh. Скрипт проверяет жесткий лимит fd с: ulimit -H -n Он устанавливает мягкий лимит fd с: ulimit -n "$MAX_FD" Это генерирует shellcheck ...
12.03.2019
1
ответ

Какие символы должны быть сбежете при использовании команды printf?

Я хочу уточнить, что я не говорю о том, как избежать персонажей на уровне оболочки интерпретации. Насколько я могу сказать, нужно сбежать только два персонажа:% и \ ​​для печати буквальных%, ...
16.01.2019
1
ответ

Оболочка POSIX: внутри двойных кавычек есть случаи, когда `\` не удается экранировать `$` `` `,` "`, `\` или ``?

Согласно POSIX Страница командного языка оболочки: \ <обратная косая черта> должна сохранять свое особое значение в качестве escape-символа (см. Escape-символ (обратная косая черта)) только в том случае, если за ней следует один из ...
08.01.2019
1
ответ

Почему является поведение синтаксиса `#!` Is unsppected by posix?

На странице языка командной строки оболочки. Спецификация POSIX: если первая строка файла команд Shell начинается с символов «#!» , результаты не указаны. Почему поведение # ...
18.12.2018