Это команда fcposix, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
fc - обработать список истории команд
СИНТАКСИС
fc [-r] [-e редактор] [первый [последний]]
ФК −l [− номер] [первый [последний]]
фк-с [старый=новый] [первый]
ОПИСАНИЕ
The fc утилита должна перечислить или отредактировать и повторно выполнить команды, ранее введенные в
интерактивный sh.
Список истории команд должен ссылаться на команды по номерам. Первый номер в списке
выбирается произвольно. Отношение числа к его команде не должно изменяться.
за исключением случаев, когда пользователь входит в систему и никакой другой процесс не обращается к списку, и в это время
система может сбросить нумерацию, чтобы начать самую старую сохраненную команду с другого номера
(обычно 1). Когда число достигает определенного в реализации верхнего предела, который должен быть
не меньше, чем значение в HISTSIZE или 32767 (в зависимости от того, что больше), оболочка может оборачиваться
числа, начиная следующую команду с меньшего числа (обычно 1). Однако, несмотря на
этот необязательный перенос чисел, fc должен поддерживать последовательность временного упорядочения
команды. Например, если четырем командам последовательно заданы номера 32766, 32767, 1
(завернутый), и 2, когда они выполняются, команда 32767 считается командой, предшествующей
1, хотя его номер больше.
Когда команды редактируются (когда -л опция не указана), результирующие строки будут
быть введенным в конец списка истории, а затем повторно запущен sh, fc прикажите, что
вызвавшее редактирование, не заносится в список истории. Если редактор возвращает
ненулевой статус выхода, это должно подавить запись в список истории и команду
повторное исполнение. Любые назначения переменных командной строки или операторы перенаправления, используемые с fc
повлияет как на fc сама команда, а также полученная команда; Например:
fc −с - -1 2> / dev / null
повторно вызывает предыдущую команду, подавляя стандартную ошибку для обоих fc и предыдущий
команда.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
The fc утилита должна соответствовать тому Базовые определения POSIX.1-2008, Раздел 12.2,
утилита Синтаксис Инструкции.
Поддерживаются следующие варианты:
-e редактор Используйте редактор, названный редактор для редактирования команд. В редактор строка - это
имя утилиты, подлежащее поиску через PATH переменная (см. Базовые определения
том POSIX.1‐2008, Глава 8, Окружающая среда Переменные показатели). Значение в
ФКЕДИТ переменная должна использоваться по умолчанию, когда -e не указано. Если ФКЕДИТ
имеет значение null или не установлено, ed используется в качестве редактора.
-л (Буква ell.) Перечислите команды, а не запускайте для них редактор. В
команды должны быть записаны в последовательности, указанной первый и последний
операнды, на которые влияет -r, где каждой команде предшествует номер команды.
-n Подавлять номера команд при перечислении с помощью -л.
-r Измените порядок перечисленных команд (с -л) или отредактировал (ни -л
ни −с).
−с Повторите команду, не вызывая редактор.
ОПЕРАНДЫ
Поддерживаются следующие операнды:
первый, последний
Выберите команды для отображения или редактирования. Количество предыдущих команд, которые могут быть
доступ определяется стоимостью HISTSIZE Переменная. Значение
первый or последний или оба должны быть одним из следующих:
[+]номер Положительное число, представляющее номер команды; номера команд могут
отображаться с -л опцию.
-номер Отрицательное десятичное число, представляющее выполненную команду.
номер команд ранее. Например, -1 - это сразу
предыдущая команда.
string Строка, указывающая на последнюю введенную команду, которая начинается с
эту строку. Если старый=новый операнд также не указан с −с,
струнная форма первый операнд не может содержать встроенный
знак>.
Когда синопсис формируется с −с используется:
* Если первый опускается, используется предыдущая команда.
Для бланков синопсиса без −с:
* Если последний опущен, последний по умолчанию используется предыдущая команда, когда -л is
указано; в противном случае он должен по умолчанию первый.
* Если первый и последний обе опущены, должны быть перечислены предыдущие 16 команд.
или предыдущая отдельная команда должна быть отредактирована (на основе -л опция).
* Если первый и последний присутствуют оба, все команды из первый в последний
подлежат редактированию (без -л) или перечисленные (с -л). Редактирование нескольких команд
осуществляется путем представления редактору всех команд за один раз.
time, каждая команда начинается с новой строки. Если первый представляет новый
команда, чем последний, команды должны быть перечислены или отредактированы в обратном порядке
последовательность, эквивалентная использованию -r. Например, следующие команды на
первая строка эквивалентна соответствующим командам на второй:
fc -r 10 20 fc 30 40
fc 20 10 fc -r 40 30
* Когда используется диапазон команд, не будет ошибкой указать первый
or последний значения, которых нет в списке истории; fc заменяет
значение, представляющее самую старую или самую новую команду в списке, в зависимости от ситуации.
Например, если в списке истории всего десять команд, пронумерованных 1
к 10:
fc -л
fc 1 99
перечисляет и редактирует, соответственно, все десять команд.
старый=новый Заменить первое вхождение строки старый в командах, которые должны быть повторно выполнены
строка новый.
СТАНДИН
Не используется.
ВХОД FILES
Нет.
ОКРУЖАЮЩАЯ СРЕДА ПЕРЕМЕННЫЕ
Следующие переменные среды должны влиять на выполнение fc:
ФКЕДИТ Эта переменная при расширении оболочкой должна определять значение по умолчанию для
-e редактор параметры редактор опция-аргумент. Если ФКЕДИТ имеет значение null или не установлено, ed
используется в качестве редактора.
ИСТФАЙЛ Определите путь к файлу истории команд. Если ИСТФАЙЛ переменная
не установлен, оболочка может попытаться получить доступ или создать файл .sh_history в
каталог, на который ссылается Главная переменная окружения. Если оболочка не может
получить доступ как для чтения, так и для записи или создать файл истории, он должен использовать
неуказанный механизм, который позволяет истории работать должным образом.
(Ссылки на `` файл '' истории в этом разделе должны пониматься как означающие это
неуказанный механизм в таких случаях.) Реализация может выбрать доступ
эта переменная только при инициализации файла истории; эта инициализация должна
происходит, когда fc or sh первая попытка получить записи из или добавить записи в,
файл, в результате команд, выданных пользователем, файл, названный
ENV переменные или файлы запуска системы, определенные реализацией. В некоторых
исторические оболочки, файл истории инициализируется сразу после ENV файл имеет
обработано. Следовательно, это определяется реализацией, вносятся ли изменения в
ИСТФАЙЛ после того, как файл истории был инициализирован, вступают в силу.
Реализации могут отключить механизм списка истории для пользователей с
соответствующие привилегии, которые не устанавливают ИСТФАЙЛ; конкретные обстоятельства при
которые это происходит, определяются реализацией. Если более одного экземпляра
оболочка использует тот же файл истории, не указано, как обновляется
файл истории из этих оболочек. Как записи удаляются из истории
файла, они должны быть удалены первыми. Не указано, когда файл истории
записи физически удаляются из файла истории.
HISTSIZE Определите десятичное число, представляющее предел количества предыдущих
доступные команды. Если эта переменная не установлена, неуказанное значение по умолчанию
должно быть больше или равно 128. Максимальное количество команд в
список истории не определен, но должен быть не менее 128. Реализация
может выбрать доступ к этой переменной только при инициализации файла истории, так как
описанный в ИСТФАЙЛ. Таким образом, не указано, были ли внесены изменения в
HISTSIZE после того, как файл истории был инициализирован, вступают в силу.
ДЛИННЫЙ Задайте значение по умолчанию для переменных интернационализации, которые не установлены или
нулевой. (См. Том Базовых определений POSIX.1-2008, Раздел 8.2,
Интернационализация Переменные показатели за приоритет интернационализации
переменные, используемые для определения значений категорий локали.)
LC_ALL Если установлено непустое строковое значение, переопределить значения всех остальных
переменные интернационализации.
LC_CTYPE Определите локаль для интерпретации последовательностей байтов текстовых данных
как символы (например, однобайтовые, а не многобайтовые символы в
аргументы и входные файлы).
LC_MESSAGES
Определите языковой стандарт, который следует использовать, чтобы повлиять на формат и содержимое
диагностические сообщения записываются в стандартную ошибку.
НЛПСАТ Определите расположение каталогов сообщений для обработки LC_MESSAGES.
АСИНХРОННЫЙ СОБЫТИЯ
По умолчанию.
стандартный вывод
Когда -л используется для вывода списка команд, формат каждой команды в списке должен
быть следующим:
"% d \ t% s \ n", <линия номер>,команду>
Если оба -л и -n указаны параметры, формат каждой команды должен быть:
"\ t% s \ n", <команду>
Есликоманду> состоит более чем из одной строки, строки после первой должны быть
отображается как:
"\ t% s \ n", <продолжение-команда>
СТДЕРР
Стандартная ошибка должна использоваться только для диагностических сообщений.
ВЫВОД FILES
Нет.
РАСПРОСТРАНЕНИЯ ОПИСАНИЕ
Нет.
ВЫХОД статус
Должны быть возвращены следующие значения выхода:
0 Успешное завершение листинга.
> 0 Произошла ошибка.
В противном случае статус выхода должен соответствовать командам, выполняемым fc.
ПОСЛЕДСТВИЯ OF ОШИБКИ
По умолчанию.
The после разделах информативный.
ЗАЯВЛЕНИЕ ИСПОЛЬЗОВАНИЕ
Поскольку редакторы иногда используют файловые дескрипторы как неотъемлемую часть своего редактирования,
перенаправляя их файловые дескрипторы как часть fc команда может произвести неожиданное
полученные результаты. Например, если vi это ФКЕДИТ редактор, команда:
fc −с | больше
некорректно работает на многих системах.
Пользователи оконных систем могут захотеть иметь отдельные файлы истории для каждого окна,
установка ИСТФАЙЛ следующим образом:
HISTFILE = $ HOME / .sh_hist $$
ПРИМЕРЫ
Нет.
ОБОСНОВАНИЕ
Эта утилита основана на fc встроенный в KornShell.
В раннем предложении указывалось -e вариант как [-E редактор [старый= новый ]], который не
историческая практика. Историческая практика в fc либо [-E редактор] or [-E - [ старый= новый
]] приемлемо, но не оба вместе. Чтобы прояснить это, появилась новая опция −с был представлен
заменяя [-E -]. Это разрешает конфликт и делает fc соответствовать Утилите
Рекомендации по синтаксису.
ИСТФАЙЛ Некоторые реализации KornShell проверяют наличие суперпользователя и не создают
файл истории, если ИСТФАЙЛ установлен. Это делается в первую очередь для того, чтобы не создавать
несвязанные файлы в корневой файловой системе при входе в однопользовательский режим.
ИСТФАЙЛ должен быть установлен, чтобы у суперпользователя была история.
HISTSIZE Требуется для ограничения размера файлов истории. Это цель стандарта
разработчикам, что, когда две оболочки используют один и тот же файл истории, команды, которые
входящий в одну оболочку, должен быть доступен для другой оболочки. Из-за
трудности синхронизации по сети, точный характер
взаимодействие не указано.
Процесс инициализации файла истории может зависеть от запуска системы.
файлы, в том смысле, что они могут содержать команды, которые эффективно вытесняют настройки пользователя
имеет для ИСТФАЙЛ и HISTSIZE. Например, команды определения функций записываются в
файл истории. Если системный администратор включает определения функций в какую-либо систему
файл запуска, вызываемый перед ENV файл, файл истории инициализируется до того, как пользователь
может влиять на его характеристики. В некоторых исторических оболочках файл истории
инициализирован сразу после ENV файл был обработан. Из-за этих ситуаций
text требует, чтобы процесс инициализации определялся реализацией.
Было рассмотрено исключение fc утилита в пользу редактирования командной строки
функцию в sh, Например, в vi режим редактирования, набор текста "v "эквивалентно:
РЕДАКТОР = vi fc
Однако fc Утилита позволяет пользователю гибко редактировать несколько команд
одновременно (например, fc 10 20) и использовать редакторы, отличные от тех, которые поддерживаются sh для
редактирование командной строки.
В KornShell псевдоним r (`` повторить '') предварительно установлено на fc -e - (эквивалент POSIX fc
−с). Вероятно, это имя команды легче запомнить, чем fc (`` исправить команду ''), но
он не соответствует рекомендациям по синтаксису служебных программ. Переименование fc в тс or готовый законопроект
считается, но поскольку это описание близко соответствует исторической практике KornShell
уже такое переименование рассматривалось как неоправданное. Пользователи могут создавать псевдонимы
всякий раз, когда странные исторические имена, такие как fc, AWK, кошка, GREP или Yacc стандартизированы
ПОСИКС.
Номера команд не имеют эффекта упорядочивания; они похожи на серийные номера. В -r вариант и
-номер операнд адресует последовательность выполнения команды, независимо от порядковых номеров.
Так, например, если номер команды в какой-то произвольной точке вернулся к 1,
не было бы двусмысленности, связанной с пересечением точки переноса. Например, если
история команд были:
32766: эхо 1
32767: эхо 2
1: эхо 3
число -2 относится к команде 32767, потому что это вторая предыдущая команда,
независимо от серийного номера.
БУДУЩЕЕ НАПРАВЛЕНИЯ
Нет.
Используйте fcposix онлайн с помощью сервисов onworks.net