Як я використовую довідкові сторінки, щоб навчитися використовувати команди?


92

Досліджуючи ще одну проблему, я натрапив на команду ,

locate something | xargs -I {} bash -c "if [ -d "{}" ]; then echo {}; fi"

про що я хотів дізнатися більше. Тому я побіг man xargsі отримав такий вихід:

XARGS(1)                    General Commands Manual                   XARGS(1)

NAME
       xargs - build and execute command lines from standard input

SYNOPSIS
       xargs  [-0prtx]  [-E  eof-str] [-e[eof-str]] [--eof[=eof-str]] [--null]
       [-d delimiter] [--delimiter delimiter]  [-I  replace-str]  [-i[replace-
       str]]    [--replace[=replace-str]]   [-l[max-lines]]   [-L   max-lines]
       [--max-lines[=max-lines]] [-n max-args] [--max-args=max-args] [-s  max-
       chars]  [--max-chars=max-chars]  [-P max-procs] [--max-procs=max-procs]
       [--interactive]      [--verbose]      [--exit]      [--no-run-if-empty]
       [--arg-file=file]   [--show-limits]   [--version]   [--help]   [command
       [initial-arguments]]

DESCRIPTION
       This manual page documents the GNU version of xargs...

Я намагаюся краще використовувати документацію, щоб дізнатися про програми Linux, але цей розділ "Синопсис" залякує нових користувачів. Він буквально схожий на хитрощі порівняно з man locateабо man free.

Поки я розумію, що квадратні дужки означають необов’язкові, а вкладені дужки означають параметри в необов’язковій. Але як я повинен викликати дійсну команду з цим?

Я тут не прошу допомоги з xargs. Я шукаю допомоги для тлумачення сторінки чоловіка, щоб зрозуміти складні команди. Я хочу перестати робити веб-блоги, проіндексовані Google, та особисту допомогу інших людей своїм першим підходом до вивчення команд Linux.


17
Продовжуйте читати сторінку чоловіка. У розділі "ВАРІАНТИ" пояснюються всі варіанти, доступні в розділі "СИНОПИС".
Іван

7
почніть зman man
mikeserv

14
Найчастіше переходьте безпосередньо до низу і шукайте розділ прикладів.
теппік

9
І не просто сканувати чоловічу сторінку на ключові слова. Дійсно читайте! Передбачувані дивні форми поведінки часто добре пояснюються.
FloHimself

6
після man manпрочитаного man intro.
mikeserv

Відповіді:


102

Що ж, це мій особистий спосіб читати керівництво:

Manpager

При відкритті довідкової сторінки , використовуючи manкоманду, вихід буде відображатися / наданий lessабо moreкомандами, або будь-який інший командою , яка буде встановлена в якості пейджера (manpager).

Якщо ви користуєтесь Linux, вам, ймовірно, надається ваша людська інфраструктура, яка вже налаштована для використання /usr/bin/less -is(якщо ви не встановили мінімальний дистрибутив) man(1), поясніть в розділі «Параметри»:

-P pager
Specify which pager to use. This option overrides the MANPAGER environment variable, 
which in turn overrides the PAGER variable. By default, man uses /usr/bin/less -is.

На FreeBSD та OpenBSD - це лише питання редагування MANPAGERзмінної середовища, оскільки вони в основному використовуватимуться more, а деякі функції, такі як пошук та виділення тексту, можуть бути відсутні.

Є гарна відповідь на питання, які відмінності more, lessі mostє тут (ніколи не використовувався most). Можливість прокручування назад і прокручування вперед за сторінкою Spaceабо в обидва способи по рядку з або (також, використовуючи viприв’язки jта k), є важливою під час перегляду вручну. Натисніть hпід час використання, lessщоб побачити підсумок доступних команд.

І тому я пропоную вам використовувати lessяк свого пейджера. lessмають деякі істотні ознаки, які будуть використані під час цієї відповіді.

Як формується команда?

Умовні угоди : Технічні характеристики бази відкритої групи Випуск 7 - IEEE Std 1003.1, видання 2013 року. Ви повинні відвідати це посилання, перш ніж намагатися зрозуміти сторінку сторінки. Ця онлайн-довідка описує синтаксис аргументів стандартних утиліт та вводить термінологію, яка використовується протягом POSIX.1-2017 для опису аргументів, оброблених утилітами. Це також опосередковано інформує вас про реальне значення таких слів, як параметри, аргументи, параметр аргументу ...

Заголовок будь-якої сторінки буде виглядати менш крикливим після розуміння позначень умовних угод:

utility_name[-a][-b][-c option_argument]
    [-d|-e][-f[option_argument]][operand...]

Майте на увазі, що ви хочете зробити.

Коли ви робили свої дослідження про xargsвас, ви робили це для козла, правда? У вас була специфічна потреба в тому, щоб читати стандартний вихід і виконувати команди на основі цього виводу.

Але коли я не знаю, яку команду я хочу?

Використовуйте man -kабо apropos(вони еквівалентні). Якщо я не знаю , як знайти файл: man -k file | grep search. Прочитайте описи та знайдіть той, який краще відповідатиме вашим потребам. Приклад:

apropos -r '^report'
bashbug (1)          - report a bug in bash
df (1)               - report file system disk space usage
e2freefrag (8)       - report free space fragmentation information
filefrag (8)         - report on file fragmentation
iwgetid (8)          - Report ESSID, NWID or AP/Cell Address of wireless network
kbd_mode (1)         - report or set the keyboard mode
lastlog (8)          - reports the most recent login of all users or of a given user
pmap (1)             - report memory map of a process
ps (1)               - report a snapshot of the current processes.
pwdx (1)             - report current working directory of a process
uniq (1)             - report or omit repeated lines
vmstat (8)           - Report virtual memory statistics

Apropos працює з регулярними виразами за замовчуванням, ( man aproposпрочитайте опис і дізнайтеся, що -rце робить), і в цьому прикладі я шукаю кожну сторінку, де опис починається з "звіту".

Щоб шукати інформацію, пов’язану з читанням стандартної обробки вводу / виводу та досягнення xargsяк можливого варіанту:

man -k command| grep input
xargs (1)            - build and execute command lines from standard input

Завжди читайте попереднє DESCRIPTIONперед початком

Знайдіть час і прочитайте опис. Просто прочитавши опис xargsкоманди, ми дізнаємось, що:

  • xargsчитає з STDIN і виконує необхідну команду. Це також означає, що вам потрібно мати певні знання про те, як працює стандартний ввід, і як маніпулювати ним через труби до ланцюгових команд
  • Поведінка за замовчуванням - діяти так /bin/echo. Це дає вам невелику підказку, що якщо вам потрібно ланцюжок більше, ніж один xargs, вам не потрібно використовувати ехо для друку.
  • Ми також дізналися, що імена файлів unix можуть містити порожні та нові рядки, що це може бути проблемою, і аргумент -0- це спосіб запобігти вибуху речі за допомогою нульових роздільників символів. Опис попереджає, що команда, яка використовується як вхід, також повинна підтримувати цю функцію, і GNU findпідтримує її. Чудово. Ми використовуємо багато знахідки xargs.
  • xargs припиниться, якщо буде досягнуто статусу виходу 255.

Деякі описи дуже короткі, і це, як правило, тому, що програмне забезпечення працює дуже просто. Навіть не думайте пропускати цю частину сторінки ;)

Інші речі, на які слід звернути увагу ...

Ви знаєте, що можете шукати файли, використовуючи find. Є тонна варіантів, і якщо ви тільки подивитеся на SYNOPSIS, ви будете переповнені тими. Це лише верхівка айсберга. Виключаючи NAME, SYNOPSISта DESCRIPTION, ви матимете такі розділи:

  • AUTHORS: люди, які створили команду або допомогли їй у створенні.

  • BUGS: перелічує всі відомі дефекти. Можуть бути лише обмеження щодо впровадження.

  • ENVIRONMENT: Аспекти вашої оболонки, на які може вплинути команда, або змінні, які будуть використовуватися.

  • EXAMPLESабо NOTES: Пояснення.

  • REPORTING BUGS: До кого вам доведеться зв’язатися, якщо ви знайдете помилки на цьому інструменті або в його документації.

  • COPYRIGHT: Особа, яка створила та відмовилася від програмного забезпечення. Все пов'язане з ліцензією самого програмного забезпечення.

  • SEE ALSO: Інші команди, інструменти або робочі аспекти, пов'язані з цією командою, і не можуть вміститися в жодному з інших розділів.

Ви, ймовірно, знайдете цікаву інформацію про потрібні аспекти інструменту в розділі прикладів / приміток.

Приклад

На наступних кроках я візьмусь findяк приклад, оскільки це поняття "простіше", ніж xargsпояснювати (одна команда знаходить файли, а інша стосується stdin та конвеєрного виконання іншого виводу команди). Давайте просто зробимо вигляд, що ми нічого не знаємо (або дуже мало) про цю команду.

У мене є конкретна проблема, яка полягає в тому, що я повинен шукати кожен файл із .jpgрозширенням та розміром 500 Кбіт (KiB = 1024 байт, що зазвичай називається кібібайт), або більше розміром у папці сервера ftp.

По- перше, відкрити керівництво: man find. SYNOPSISТонкий. Давайте шукатимемо речі в посібнику: Введіть /плюс слово, яке ви хочете ( size). Він буде індексувати безліч записів, -sizeякі враховуватимуть конкретні розміри. Застряг. Не знаю, як шукати заданий розмір з "більше" або "менше", і чоловік мені цього не показує.

Давайте спробуємо і пошукаємо наступний запис, знайдений натисканням n. ГАРАЗД. Знайшов щось цікаве : find \( -size +100M -fprintf /root/big.txt %-10s %p\n \). Можливо, цей приклад показує нам, що з -size +100Mним ви знайдете файли зі 100 МБ або більше. Як я міг підтвердити? Підійти до голови сторінки та шукати інші слова.

Знову ж спробуємо слово greater. Натискання gпризведе нас до голови сторінки. /greater, і перший запис:

 Numeric arguments can be specified as

    +n     for **greater** than n,

    -n     for less than n,

     n      for exactly n.

Звучить чудово. Здається, цей блок посібника підтвердив те, про що ми підозрювали. Однак це стосується не лише розмірів файлів. Він застосовуватиметься до будь-якого, nщо може бути знайдено на цій сторінці сторінки (як сказано у фразі: "Числові аргументи можна вказати як").

Добре. Знайдемо спосіб фільтрації по імені: g /insensitive. Чому? Нечутливий? Wtf? У нас є гіпотетичний FTP - сервер, де «що інші ОС» люди могли б дати ім'я файлу з розширенням , як .jpg, .JPG, .JpG. Це призведе до:

-ilname pattern
              Like  -lname,  but  the  match  is  case insensitive.  If the -L
              option or the -follow option is in  effect,  this  test  returns
              false unless the symbolic link is broken.

Однак після пошуку lnameви побачите, що це буде шукати лише символічні посилання. Ми хочемо справжні файли. Наступний запис:

   -iname pattern
          Like -name, but the match is case insensitive.  For example, the
          patterns `fo*' and `F??' match  the  file  names  `Foo',  `FOO',
          `foo',  `fOo',  etc.   In these patterns, unlike filename expan‐
          sion by the shell, an initial '.' can be matched by  `*'.   That
          is, find -name *bar will match the file `.foobar'.   Please note
          that you should quote patterns as a matter of course,  otherwise
          the shell will expand any wildcard characters in them.

Чудово. Мені навіть не потрібно читати, -nameщоб побачити, що -inameце справді нечутлива версія цього аргументу. Дозволяє зібрати команду:

Команда: find /ftp/dir/ -size +500k -iname "*.jpg"

Що тут мається на увазі: Знання про те, що підстановочний знак ?представляє "будь-який символ на одній позиції" і *являє "нуль або більше будь-якого символу". -nameПараметр дасть вам короткий виклад цього знання.

Поради, які стосуються всіх команд

Деякі параметри, мнемоніка та "синтаксичний стиль" подорожують усіма командами, завдяки чому ви купуєте певний час, не потрібно відкривати сторінку сторінки. Вони засвоюються на практиці, і найпоширеніші:

  • Взагалі, -vозначає багатослівний. -vvvє варіантом "дуже дуже багатослівний" для деяких програм.
  • Після стандарту POSIX, як правило, один аргумент тире може бути складений. Приклад: tar -xzvf, cp -Rv.
  • Як правило, -Rта / або -rозначає рекурсивний характер.
  • Майже у всіх командах є коротка довідка з --helpопцією.
  • --version показує версію програмного забезпечення.
  • -p, утиліта копіювання чи переміщення означає "зберегти дозволи".
  • -y означає "ТАК" або "продовжувати без підтвердження" у більшості випадків.

Зауважте, що вищезазначене не завжди відповідає дійсності. Наприклад, -rкомутатор може означати дуже різні речі для різних програм. Це завжди гарна ідея перевірити і переконатися, коли команда може бути небезпечною, але це звичайні за замовчуванням.

Значення команд за замовчуванням.

Під час цієї відповіді ми побачили, що less -isце пейджер man. Поведінка команд за замовчуванням не завжди відображається в окремому розділі на маніпуляціях або в розділі, який знаходиться в самому верхньому місці.

Вам доведеться прочитати параметри, щоб дізнатись за замовчуванням, або якщо вам пощастить, введення тексту /pagerпризведе вас до цієї інформації. Це також вимагає, щоб ви знали концепцію пейджера (програмне забезпечення, яке прокручує сторінку сторінки), і це річ, яку ви придбаєте лише після прочитання безлічі рукописів.

Чому це важливо? Це відкриє ваше сприйняття, якщо під час читання man(1)в Linux ( less -isпейджері) або FreeBSD ви знайдете відмінності щодо поведінки прокрутки та кольорів man(1).

А як щодо SYNOPSISсинтаксису?

Отримавши всю інформацію, необхідну для виконання команди, ви можете комбінувати параметри, параметри-аргументи та операнди в рядку, щоб зробити свою роботу виконаною. Огляд понять:

  • Параметри - це комутатори, що диктує поведінку команди. " Зробіть це " , не робіть цього "або" дійте так ". Часто називають вимикачами.
  • Параметри-параметри використовуються в більшості випадків, коли опція не є бінарною (увімкнено / вимкнено), як -tна mount, що вказує тип файлової системи ( -t iso9660, -t ext2). " Робіть це із закритими очима " або " годуйте тварин, але тільки левів ". Також називаються аргументами.
  • Операнди - це те, на що ти хочеш діяти цією командою. Якщо ви використовуєте cat file.txt, операнд - це файл у вашому поточному каталозі, і його вміст буде показано на STDOUT. lsце команда, де операнд необов'язковий. Три точки після операнда неявно підказують вам, що catможуть діяти на кілька операндів (файлів) одночасно. Ви можете помітити, що деякі команди встановили, який тип операнду він буде використовувати. Приклад:cat [OPTION] [FILE]...

Пов’язані матеріали з резюме:

Коли цей метод не буде працювати?

  • Настанови, які не мають прикладів
  • Інструкції, де варіанти мають коротке пояснення
  • Коли ви використовуєте загальні ключові слова, як and, наприклад to, forвсередині manpages
  • Керування, які не встановлені. Це здається очевидним, але якщо у вас немає lftp(і його manpages) не встановлено, ви не можете знати, що це підходящий варіант, як більш досконалий ftp-клієнт, запустившиman -k ftp

У деяких випадках приклади будуть досить простими, і вам доведеться виконати кілька команд вашої команди, щоб перевірити, або, в гіршому випадку, Google.

Інше: Мови програмування та його модулі:

Якщо ви програмуєте або просто створюєте сценарії, майте на увазі, що в деяких мовах є власні системи управління, як-от perl( perldocs), python ( pydocs) тощо, що містить конкретну інформацію про методи / функції, змінні, поведінку та іншу важливу інформацію про модуль ви намагаєтеся використовувати і вчитися. Це було мені корисно, коли я створював сценарій для завантаження непрочитаних електронних листів IMAP за допомогою perl Mail::IMAPClientмодуля.

Вам доведеться з’ясувати ці конкретні програми, використовуючи man -kабо шукаючи в Інтернеті. Приклади:

[root@host ~]# man -k doc | grep perl
perldoc              (1)  - Look up Perl documentation in Pod format


[root@host ~]# perldoc Mail::IMAPClient
IMAPCLIENT(1)         User Contributed Perl Documentation        IMAPCLIENT(1)

NAME
       Mail::IMAPClient - An IMAP Client API

SYNOPSIS
         use Mail::IMAPClient;

         my $imap = Mail::IMAPClient->new(
           Server   => ’localhost’,
           User     => ’username’,
           Password => ’password’,
           Ssl      => 1,
           Uid      => 1,
         );

... тонни інших речей тут, з такими розділами, як звичайна карта сторінки ...

З пітоном:

[root@host ~]# pydoc sys
Help on built-in module sys:

NAME
    sys

FILE
    (built-in)

MODULE DOCS
    http://www.python.org/doc/current/lib/module-sys.html

DESCRIPTION
    This module provides access to some objects used or maintained by the
    interpreter and to functions that interact strongly with the interpreter.
...again, another full-featured manpage with interesting info...

Або, help()функція всередині оболонки python, якщо ви хочете прочитати докладніші відомості про якийсь об'єкт:

nwildner@host:~$ python3.6
Python 3.6.7 (default, Oct 21 2018, 08:08:16)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> help(round)

Help on built-in function round in module builtins:

round(...)
    round(number[, ndigits]) -> number

    Round a number to a given precision in decimal digits (default 0 digits).
    This returns an int when called with one argument, otherwise the
    same type as the number. ndigits may be negative.

Бонус:wtf команда може допомогти вам з абревіатурами і вона працює , як whatisякщо б не абревіатури на ньому немає бази даних знайдена, але то , що ви шукаєте є частиною бази даних людини. У Debian ця команда є частиною bsdgamesпакету. Приклади:

nwildner@host:~$ wtf rtfm
RTFM: read the fine/fucking manual
nwildner@host:~$ wtf afaik
AFAIK: as far as I know
nwildner@host:~$ wtf afak
Gee...  I don't know what afak means...
nwildner@host:~$ wtf tcp
tcp: tcp (7)              - TCP protocol.
nwildner@host:~$ wtf systemd
systemd: systemd (1)          - systemd system and service manager

Ви також можете зробити man find | grep .... Мені подобаєтьсяman command | sed -n '/^[[:space:]]*-/,/^$/p'
mikeserv

6
Так. Ти можеш. Я просто припускав, що оператор "noob" і намагається розпочати роботу з manpages :)

3
Ця відповідь має стати головним результатом для "Як я ефективно використовую man?" Дякую і молодець.
користувач1717828

8
@nwildner, ти заслужив цукерку після такої величезної та добре сформованої відповіді. Хороша робота!
Вілліан Пайсао

6
Я думаю, що це слід додати до Linux. Як manсторінку звичайно.
myaut

38

Це досить непогано пояснено у man man:

   The following conventions apply to the SYNOPSIS section and can be used
   as a guide in other sections.

   bold text          type exactly as shown.
   italic text        replace with appropriate argument.
   [-abc]             any or all arguments within [ ] are optional.
   -a|-b              options delimited by | cannot be used together.

   argument ...       argument is repeatable.
   [expression] ...   entire expression within [ ] is repeatable.

Щодо того, як ви повинні написати дійсну команду з цього, ну, ви це не так. Конспект корисний, коли ви дізнаєтесь, як працює команда. Це може допомогти вам оновити пам’ять. Щоб зрозуміти, як працює команда, слід прочитати сторінку man. Особливо описи варіантів та розділи прикладів.

Іноді конспекту вистачає. Наприклад, у man ls:

SYNOPSIS
       ls [OPTION]... [FILE]...

В іншому випадку це марно, якщо ви вже не знаєте, як використовувати відповідну команду. Наприклад man dd:

   dd [OPERAND]...
   dd OPTION

Отже, на закінчення, не хвилюйтеся, якщо у вас не буде конспекту. Це нормально. Прочитайте саму сторінку чоловіка.


Дякую за пораду, особливо пункт "Щодо того, як ...".
користувач1717828

21

Деякі основи для розуміння конспекту

  • кожен [foo]представляє необов'язковий аргумент або параметр.
  • коли [foo [ bar ] ]використовується синтаксис, ви можете використовувати foo, а ви можете додати смугу.
  • Цей спосіб використовується обов'язковий параметр параметра [ -S size ], який говорить про те, що -S аргумент чекає обов'язкового розміру.

Наприклад : foo [-S size ] filename ...

засоби

  • команда є foo
  • необов'язковий параметр -Sможе бути використаний, ви повинні сказати size(ім'я дасть вам підказку)
  • Обов’язковим аргументом є filename(це також дає вам підказку, див. man mkdir)
  • elipsis ...повідомляє, що ви можете використовувати декілька файлів.

Ви все ще повинні пройти глибину сторінки людини, щоб зрозуміти варіант (у моєму прикладі вище, про що -S sizeйдеться)


14

manсторінки, як правило, відображаються в lessнаш час. Це дає можливість здійснювати пошук через них. Я б не переймався конспектом, особливо не тому, що у вас є певний командний рядок, який ви хочете зрозуміти.

Натисніть /і почніть вводити, -Iа потім Enter. Перше звернення буде в конспекті, друге (використання nдля наступного) отримує детальне пояснення -I.


11

Варто пам’ятати, що ви не можете переглянути посібник лише для однієї команди у випадку команд, які виконують інші команди.

Для вашої прикладної команди

locate something | xargs -I {} bash -c "if [ -d "{}" ]; then echo {}; fi"

Ви повинні отримувати інформацію не тільки , xargsа й bashі [(це може бути в testїї довідці). Також вам може знадобитися інформація про вашій оболонці (ймовірно, також bash) для правил цитування, оскільки ваша команда включає складний рядок, що цитується. Я вже можу вам сказати, що цитований аргумент неправильний (і неправильний таким чином, який з’явиться лише тоді, коли ви зустрінете файл з пробілами в імені); внутрішнє, "{}"мабуть, має бути '{}'.

Отже, спочатку ви зверніться до сторінки сторінки xargs і побачите, [-I replace-str]що -I {}означає, і [command [initial-arguments]]що bashі все після цього означає. Тоді ви б посилалися на сторінку сторінки, bashщо -cробить і т.д.


6

Додавання до вже наданих чудових відповідей:

1) Якщо вас цікавить утиліта gnu, особливо такі, як, sedа grepіноді, використання infoкоманди призведе до значно розширеної версії інформації про команду. sedнаприклад, є докладний розділ про те, як писати регулярні вирази, та інший розділ з кількома дуже складними прикладами використання.

2) Це "посібник". Посібник призначений насамперед, щоб допомогти вам запам'ятати деталі чогось, що ви вже розумієте. Він розроблений, щоб ви могли швидко отримати необхідні деталі та вийти. (І занадто багато людей не мають прикладів використання або лише тривіальних.)

Коли мені потрібно дізнатися що - щось нове, навіть невелика особливість команди, яка мені не ясно, я йду в мережі і пошук , використовуючи кращі ключові слова я можу думати (наприклад Linux xargs) і додати слово howto, examplesабо tutorial. Це дуже часто є досить продуктивним.

Зазвичай я використовую качку, тому що вона підтримує мою конфіденційність, але якщо мені потрібен більш високий контроль над моїми пошуками, я використовую Google, тому що я можу сказати це лише для пошуку на одному веб-сайті або для повернення результатів лише за останній рік. (Є багато інших варіантів розширеного пошуку. Ви можете їх Google.;))

Ще одна порада:

Для команд, на які я часто посилаюсь, я зберігаю сторінку man у текстовому файлі

man bash > bashman.txt

і завантажуйте цей файл в інше вікно в моєму текстовому редакторі, щоб я міг гортати назад і назад, копіювати та вставляти і т. д. Я зазвичай змушую файл читати лише, тому я не закінчую обробляти його випадково, але оскільки це мій особисту копію, я можу редагувати її будь-яким способом, додаючи теги, щоб я легше знаходив розділ або навіть додавав власні примітки чи приклади.

Єдиним недоліком цього є те, що оригінальна сторінка man може бути оновлена, а моя копія статична.


4

Щоб отримати швидку допомогу з вашою конкретною командою, ви можете скористатися Пояснити оболонку . Наприклад, ваша команда . Після того, як ви зрозумієте, як це працює на першому високому рівні, вам слід приступити до роботи, як рекомендують інші відповіді.


2

Існують корисні інструменти, щоб дізнатися більше про команди Linux:

  1. cheatвідобразиться часто використовуваний варіант для командного рядка. Крім того, ви можете додати свій власний command + optionдля відображення cheatдля певної команди.
  2. bropagesІнструмент дає певний приклад для командного рядка, можна додати власний приклад або підняти / знизити даний приклад після отримання коду підтвердження bro thanks. Команда, яка повинна проголосувати, з’явиться у верхній частині broсторінки.

1

Я пропоную tldrвсебічний інструмент, подібний до людини. Спрощені та керовані громадою сторінки. В Ubuntu ви можете встановити його за допомогою оснащення, але він має версії і для інших дистрибутивів. Він також пропонує декілька поширених прикладів використання. 100% рекомендується.


0

> Я шукаю допомоги для тлумачення сторінки чоловіка, щоб зрозуміти складні команди.

Я думаю, що тут непорозуміння. Що робить Linux / UNIX настільки потужним, що ви можете створювати дуже довгі та ефективні команди, наприклад, перенаправляючи stdout однієї команди (тут, locate) до stdin іншої (тут, xargs) через pipe ( |). Отже, як правильно сказано Random832, ви не знайдете жодної сторінки, що пояснює, що робить ваша прикладна команда.

Я рекомендую прочитати посібник із сценаріїв оболонок Linux; Посібник з розширеного сценарію Bash - відмінний документ. Будь ласка, не залякуйте це; для оволодіння Linux потрібні роки і це нескінченний процес, але ви можете вивчити основи за розумну кількість часу.

Потім зверніться до manpages, коли вам потрібно знати деталі конкретної команди.

Отримавши суть цього, Commandlinefu та Bash One-Liners також варто прочитати, щоб отримати хороші приклади.


-1

Для пошуку чогось конкретного в командах на сторінці чоловіка, ви можете використовувати:

man echo | grep output.

Але для пошуку перемикачів (наприклад -n), ви повинні використовувати його таким чином:

man echo | grep -- -n
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.