Мнемоника для функций Unix?

Первый, упрощенный подход, мог быть:

a) отсортируйте свой список файлов:

sort file.lst > sorted.lst 
for f in $(< sortd.lst) ; do find -name $f -printf "%f\n"; done > found.lst
diff sorted.lst found.lst

найти missings, или

comm sorted.lst found.lst

найти соответствия

  • Ловушки:
    • С новыми строками в именах файлов очень трудно управиться
    • пробелы и подобные вещи в именах файлов не хороши также. Но так как Вы управляете файлами в списке файлов, возможно, это решение уже достаточно, однако...
  • Недостатки:

    • То, когда находят, находит файл, он продолжает бежать для нахождения другого и другого. Было бы хорошо пропустить дальнейший поиск.
    • находка могла искать несколько файлов сразу с некоторой подготовкой:

      найдите - называют a.file - или - называют-b.file - или - называют c.file...

Мог расположиться быть опцией? Снова, предварительно отсортированный список файлов принял:

 for f in $(< sorted.tmp) ; do locate --regexp "/"$f"$" > /dev/null || echo missing $f ; done

Поиск foo.bar не будет соответствовать файлу foo.ba или oo.bar с - regexp-конструкция (чтобы не быть confuesed regex без p).

Можно указать, что определенная база данных для располагается, и необходимо обновить ее перед поиском при необходимости в новых результатах.

2
14.03.2011, 15:24
4 ответа
  1. Переместите курсор через имя syscall
  2. Нажмите 'K'

(Предпосылка: vi.)

3
27.01.2020, 22:16
  • 1
    1 ответа, Который не является ответом на мой вопрос. –   15.03.2011, 04:49
  • 2
    +1, но это действительно работает. –  Simon Richter 15.03.2011, 13:25
  • 3
    я ответил на высокоуровневый вопрос: "Как Вы помните порядок параметров к системным вызовам Unix?" Как Вы видите из ответов, которые Вы получили, включая ожидаемое решение в вопросе может задушить хорошие ответы. –  Warren Young 15.03.2011, 22:12
  • 4
    "Смотрит на страницы руководства", не хороший ответ на вопрос, который задают. Впечатление, которое я получаю из того ответа, - то, что Вы предполагаете, что человек, спрашивающий, незнаком с чрезвычайно основными средствами Unix. Я знаю о нескольких способах искать информацию, но я конкретно спрашиваю, есть ли у кого-либо мнемоника для системных вызовов. –   17.03.2011, 02:40

Наиболее распространенные syscalls - читают (2), и запись (2) берет 3 параметра: дескриптор, буфер и длина. Число возвратов байтов на самом деле чтение или записанный. близко (2), очевидно, берет один параметр - дескриптор для закрытия.

Большинство syscalls возвращается-1 в случае ошибки и наборов errno.

Все остальное я обычно читал в соответствующей странице справочника. Просто не забывайте команду: man 2 syscall_name

P.S.: у Вас есть введение (2)?

0
27.01.2020, 22:16
  • 1
    Большое спасибо за то, что, по крайней мере, попытались ответить на вопрос, который задают. –   17.03.2011, 02:44
  • 2
    Но стоит отметить, что освободил, и fwrite являются на самом деле противоположностью чтения и записи здесь. Который является, почему я задавался вопросом о мнемонике. –   17.03.2011, 02:57
  • 3
    fread и fwrite, является библиотечными функциями, не syscalls. Они называют чтение и пишут, чтобы сделать задание :) –  gelraen 17.03.2011, 10:14

Это - типичная проблема для большинства разработчиков. При написании кода часто, Вы в конечном счете найдете некоторые шаблоны, которые можно использовать в качестве мнемоники, например, дескрипторы файлов обычно являются первым параметром. Но всегда будут раздражающие исключения трудно для запоминания.

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

Некоторые стандартные функции (Списки Автозавершения, проверка синтаксиса в реальном времени, подсказки документации) устранят Вашу проблему, устраняя большие издержки для Вас. В конце концов, это - то, для чего компьютеры, делая скучные повторяющиеся задачи, таким образом, можно сфокусироваться на интересном материале.

0
27.01.2020, 22:16
  • 1
    Это, возможно, было решением проблемы вместо того, чтобы связаться со статьями Wikipedia, при помещении ссылок на "специализированный редактор исходного кода" или "интегрированную среду разработки", которая сказала бы мне который параметры использовать для который системные вызовы. Поскольку это - этот ответ, кажется очень покровительственным. –   17.03.2011, 02:43
  • 2
    Те ссылки в Википедии являются на самом деле ссылками на "редакторы исходного кода" и "IDE", если Вы посмотрите снова, то Вы будете видеть, что существует обширный список тех инструментов там. Мне нравится затмение, но необходимо выбрать один для Вашего сам. Я сожалею, если я звучу покровительственным, но Вы также кажетесь, что не приложили усилий к нему. –  forcefsck 17.03.2011, 08:59

Я использую -h или --help или -?. Или иногда man command.

-1
27.01.2020, 22:16
  • 1
    -h или --help - это - что-то не о syscalls. –  imz -- Ivan Zakharyaschev 16.03.2011, 19:10

Теги

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