инфа о bash (шаблоны в частности) (также man)
Модераторы: /dev/random, Модераторы разделов
инфа о bash (шаблоны в частности)
Я хотел бы узнать, где и как в Linux можно найти документации по использованию шаблонов в bash, а также информацию о, использовании символов вроде "|","\" , ">2&1"?
Например, каким образом можно найти описание применения символа ">"?
Например, каким образом можно найти описание применения символа ">"?
Re: инфа о bash (шаблоны в частности)
1. читать документ "advanced bash scripting" и подобные
2. то, что вы называете "шаблонами" здесь называется "регулярные выражения" (они же "regular expressions", "regexp", "регэкспы").
успехов
2. то, что вы называете "шаблонами" здесь называется "регулярные выражения" (они же "regular expressions", "regexp", "регэкспы").
успехов
The answer, my friend, is blowin' in the wind.
The answer is blowin' in the wind.
The answer is blowin' in the wind.
Re: инфа о bash (шаблоны в частности)
1. Как я понял, этот документ есть в интернете, но в системе его нет.
Я читаю книгу на INTUIT,RU.
В ней отдельно говорится о шаблонах и регулярных выражениях.
Я читаю книгу на INTUIT,RU.
В ней отдельно говорится о шаблонах и регулярных выражениях.
Re: инфа о bash (шаблоны в частности)
не надо путать регулярные выражения с шаблонами генерации имен файлов ( man 7 glob )
А вообще man bash - там все есть
А вообще man bash - там все есть
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
Re: инфа о bash (шаблоны в частности)
извините, что ответил не по теме ((
The answer, my friend, is blowin' in the wind.
The answer is blowin' in the wind.
The answer is blowin' in the wind.
Re: инфа о bash (шаблоны в частности)
Да, это то, что нужно.
Но как найти этот glob 7 в обширных документациях?
К примеру, в качестве запроса для поиска было использовано слово "pattern".
man -K pattern?
Сейчас испытываю, очень много вариантов.
Другой путь:
apropos pattern нашел
glob (3) - find pathnames matching a pattern, free memory from glob()
globfree [glob] (3) - find pathnames matching a pattern, free memory from glob()
glob (n) - Return names of files that match patterns
Но не нашел упомянаний о нужной документации 7 glob.
Мои дальнейшие действия
whatis glob
glob (3) - find pathnames matching a pattern, free memory fromglob()
glob (7) - Globbing pathnames
glob (n) - Return names of files that match patterns
Упомянания о 7 glob появились, но сразу я б их не нашел.
Как найти man 7 glob (инфу о шаблонах/pattern) не вводя 2 команды?
Re: инфа о bash (шаблоны в частности)
man -k pathname
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
Re: инфа о bash (шаблоны в частности)
Из glob найдено.
glob (3) - find pathnames matching a pattern, free memory from glob()
glob (7) - Globbing pathnames
globfree [glob] (3) - find pathnames matching a pattern, free memory from glob()
Другой вопрос, я не нашел упомянаний о параметре pathname в man.
Я вводил
man man
man -h
info man
Как найти инфу о нем, учитывая что я ничего о pathname не знаю?
Re: инфа о bash (шаблоны в частности)
А что Вы хотели найти?
pathname в переводе с английского - это полное имя файла (или путевое имя). Тут достаточно в словарик заглянуть. Вы хотите правила построение pathname?
все, что Вас интересует есть в man bash
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
Re: инфа о bash (шаблоны в частности)
Я знаю, как это переводится.
Но ведь не факт, что испольуя команду с параметром, осмысленно переводимым с английского языка, она заработает.
Решил вывести в текстовый файл инфу выводимую man bash.
Кстати, пробовал
man bash bash,txt
и man bash >bash.txt 2>&1
В текстовом файле инфа не такая как в man bash.
Вот man bash
начало
NAME
bash - GNU Bourne-Again SHell
а здесь - вывод в файл
[1mNAME[0m
bash - GNU Bourne-Again SHell
Что делать, чтобы корректно вывести инфу в файл?
И как задействовать поиск по строке, просматривая man?
Re: инфа о bash (шаблоны в частности)
Так надо смотреть ман по команде, аргументы которой вы хотите узнать или понять.
Хм. можно попробовать так
man bash | troff -man -a > bash.txt
Поиск по ману можно сделать так же как в утилите more (ведь именно она (или less) используется для вывода содержимого мана на экран), это делается так же как и в редакторе vi.
Нажимаете клавишу \ и далее пишете что искать потом enter, n - переход к следующиму совпадению
Про интутит. Это Вы уже читали: http://www.intuit.ru/department/os/osunix/6/3.html
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: инфа о bash (шаблоны в частности)
В каком виде? Файлы бывают разные. Вообще, man man, в частности, опция -T.
для отображения результата man использует pager (как он его выбирает -- см. man man). Обычно pager это less, в нем есть магическая кнопка 'h', которая показывает краткую справку, есть также man less, ну и для совсем ленивых: '/' = поиск по рег. выр. вперед.
Мои розовые очки
Re: инфа о bash (шаблоны в частности)
команда man man
Я и написал в сообщениеи #8, что я так делал. Но упомянаний о параметре pathname не нашел.
Не помогло.
Нет - другую книгу. http://www.intuit.ru/department/os/linux/
С troff еще поразбираюсь, а пока man -W bash попользуюсь.
Re: инфа о bash (шаблоны в частности)
потому, что pathname не является аргументом для команды man
Вам советую начать с http://www.intuit.ru/department/os/osunix/ Так гораздо интересней
можно как watashiwa_daredeska подсказал man -Tascii bash >bash.txt
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: инфа о bash (шаблоны в частности)
man не содержит всеобъемлющего описания системы с азов и не задумывался для этого. Предполагается, что пользователь знаком с некоторыми элементарными базовыми понятиями. Например, в man man нельзя описать, как синтаксически можно записать pathname -- с точки зрения man, это обычный путь, без всяких glob'ов, тильд, подстановок переменных среды и вывода команд. Все эти подстановки выполняет shell, и их синтаксис зависит от shell, а не от man. У bash один синтаксис, у csh другой, у tclsh третий, у python (а чем не шелл?) четвертый и т.д.
Мои розовые очки
Re: инфа о bash (шаблоны в частности)
Пожалуй, я все воспринял тогда слишком буквально.
Но команды
man -k pattern
man -k pathname pattern
выводят разную информацию, причем только во второй упомянается о glob 7.
Я результаты выполнения сохранил в 1.txt (без pathname) и 2.txt (там где pathname)
И получается, что pathname - это параметр.
А если не man, то чей? bash?
Чтож, UNIX подобное оно и в Африке UNIX подобное. Почему бы и нет.
Re: инфа о bash (шаблоны в частности)
Понятно.
-k <слово>
-k - это ключ команды man
его описание есть в man man
а слово может быть любым - это как раз то, что мы пытаемся найти
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
Re: инфа о bash (шаблоны в частности)
То, что -k ключ мне известно.
Но вот c добавлением pathname получается та инфа, о которой не упомянается без pathname.
То есть использование pathname pattern дало именно тот результат о странице мана glob 7 (в которой говорится только о pattern), который не нашелся используя только pattern.
watashiwa_darede... писал(а): ↑28.01.2009 00:25man не содержит всеобъемлющего описания системы с азов и не задумывался для этого. Предполагается, что пользователь знаком с некоторыми элементарными базовыми понятиями. Например, в man man нельзя описать, как синтаксически можно записать pathname -- с точки зрения man, это обычный путь, без всяких glob'ов, тильд, подстановок переменных среды и вывода команд.
Как я понял pathname к bash относится, но я не понимаю что это такое.
Re: инфа о bash (шаблоны в частности)
не так.
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово pathname
man -k pathname
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово linux
man -k linux
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово windows
man -k windows
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово stream
man -k stream
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово nesk
man -k nesk
В вашем случае, когда вы писали man -k pathname pattern
вы искали страницы в описание которых упоминается pathname или pattern
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово pathname
man -k pathname
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово linux
man -k linux
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово windows
man -k windows
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово stream
man -k stream
Мы хотим найти все команды, конфиги, функции и системные вызовы в однострочном описание которых упоминается слово nesk
man -k nesk
В вашем случае, когда вы писали man -k pathname pattern
вы искали страницы в описание которых упоминается pathname или pattern
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
Re: инфа о bash (шаблоны в частности)
nesk
Я вас понял, причем сразу.
И все -таки делал по своему.
/* Меня смутило что в описании glob 7 кроме pattern есть слово pathname. Потому я и подумал, что pathname - какой то особый параметр, а не
2 - е искомое слово*/
И glob 7 нашелся именно из - за второго параметра pathname (второго после pattern, а не как я думал).
Но теперь придется вернуться к началу.
Ввожу
man -k pattern, но не могу найти интересной страницы, которую вы посоветовали man 7 glob (в ней кстати есть слово pattern). Хотя man 3 glob находит.
Её то как найти?
Я вас понял, причем сразу.
И все -таки делал по своему.
/* Меня смутило что в описании glob 7 кроме pattern есть слово pathname. Потому я и подумал, что pathname - какой то особый параметр, а не
2 - е искомое слово*/
И glob 7 нашелся именно из - за второго параметра pathname (второго после pattern, а не как я думал).
Но теперь придется вернуться к началу.
Ввожу
man -k pattern, но не могу найти интересной страницы, которую вы посоветовали man 7 glob (в ней кстати есть слово pattern). Хотя man 3 glob находит.
Её то как найти?
Re: инфа о bash (шаблоны в частности)
В конце каждой странице есть поле See Also, там обычно обучно упоминаются какие страници еще следует прочитать
а можно
whatis glob
ну или на крайней случай
man -a glob
само самой из man man вы должны знать, что храниться в каждом разделе (томе) man, что лежит в первом разделе, что в третьем, а что в седьмом.
а можно
whatis glob
ну или на крайней случай
man -a glob
само самой из man man вы должны знать, что храниться в каждом разделе (томе) man, что лежит в первом разделе, что в третьем, а что в седьмом.
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
Re: инфа о bash (шаблоны в частности)
Все - таки 2 команды для поиска нужного.
1) man -k pattern
2) whatis glob
man man такой информации мне не предоставляет
Кстати, основной вопрос решен.
Спасибо.
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: инфа о bash (шаблоны в частности)
Как же не предоставляет? Раздел DESCRIPTION:
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File formats and conventions eg /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conventions), e.g.
man(7), groff(7)
8 System administration commands (usually only for root)
9 Kernel routines [Non standard]
Мои розовые очки
Re: инфа о bash (шаблоны в частности)
вот же они, все секции (разделы), почти в самом начале:
Shell
$ man -Tutf8 man|head -n 40
MAN(1) Manual pager utils MAN(1)
NAME
man - an interface to the on-line reference manuals
SYNOPSIS
man [-c|-w|-tZ] [-H[browser]] [-T[device]] [-X[dpi]] [-adhu7V] [-i|-I]
[-m system[,...]] [-L locale] [-p string] [-C file] [-M path] [-P
pager] [-r prompt] [-S list] [-e extension] [--warnings [warnings]]
[[section] page ...] ...
man -l [-7] [-tZ] [-H[browser]] [-T[device]] [-X[dpi]] [-p string] [-P
pager] [-r prompt] [--warnings[warnings]] file ...
man -k [apropos options] regexp ...
man -f [whatis options] page ...
DESCRIPTION
man is the system’s manual pager. Each page argument given to man is
normally the name of a program, utility or function. The manual page
associated with each of these arguments is then found and displayed. A
section, if provided, will direct man to look only in that section of
the manual. The default action is to search in all of the available
sections, following a pre-defined order and to show only the first page
found, even if page exists in several sections.
The table below shows the section numbers of the manual followed by the
types of pages they contain.
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File formats and conventions eg /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conven‐
tions), e.g. man(7), groff(7)
8 System administration commands (usually only for root)
9 Kernel routines [Non standard]
upd. ну вот хоть чуть-чуть, но не успел.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
Re: инфа о bash (шаблоны в частности)
watashiwa_darede... писал(а): ↑28.01.2009 00:13В каком виде? Файлы бывают разные. Вообще, man man, в частности, опция -T.
Результат.
man: invalid option -- 'T'. В текстовый файл, чтобы читать например gedit, предварительно убрав ненужные тэги.
аналогично.
Не у меня. Файл прилагается.
- Вложения
-
- man.txt
- (14.54 КБ) 10 скачиваний
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: инфа о bash (шаблоны в частности)
Дистриб какой? Версия man какая? Что-то все странненькое и старенькое.
Мои розовые очки
Re: инфа о bash (шаблоны в частности)
watashiwa_darede... писал(а): ↑28.01.2009 14:56Дистриб какой? Версия man какая? Что-то все странненькое и старенькое.
Mandriva 2009 Powerpack x64.
man-pages version 3.09.Release mdv2009.0 - нашел в установках программ в Control Center.
/* там еще подписано
A large collection of man pages (reference material) from the Linux Documentation Project (LDP). The man pages are organized into the following sections:
Section 1: User commands (intro only) Section 2: System calls Section 3: Libc calls Section 4: Devices (e.g., hd, sd) Section 5: File formats and protocols (e.g., wtmp, /etc/passwd, nfs) Section 6: Games (intro only) Section 7: Conventions, macro packages, etc. (e.g., nroff, ascii) Section 8: System administration (intro only) Section 9: Kernel internal routines */
Другой вопрос - про alias.
Из man bash:
"For almost every purpose, aliases are superseded by shell functions..."
А вот конкретно про функции для alias я ничего не нашел.
А где найти инфу про такие функции?
Ибо в man bash не так уж и много написано.
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: инфа о bash (шаблоны в частности)
man-pages это коллекция man-страниц. Программа man в Debian находится в пакете man-db, не знаю как в Mandriva. Однако, что-то странно. Даже в Debian у меня manpages версии 3.16, а уж man man 2005 года (чуть моложе, чем в Etch) в Mandriva 2009 -- это как-то вообще подозрительно.
Не "функции для alias", а функции вместо alias'ов. В цитате написано, что alias'ы можно заменить функциями.
Все же, в man bash, сразу после приведенной цитаты. Там написано, как определять функции, что еще нужно?
Мои розовые очки
Re: инфа о bash (шаблоны в частности)
watashiwa_darede... писал(а): ↑28.01.2009 18:32Все же, в man bash, сразу после приведенной цитаты. Там написано, как определять функции, что еще нужно?
Написано, но не про конкретнык функции, которые substitute alias.
В - принципе, не так уж сейчас и важно. Разберусь.
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: инфа о bash (шаблоны в частности)
Нет никаких конкретных функций.
Код: Выделить всё
alias ll="ls -l"
Код: Выделить всё
ll() {
ls -l "$@"
}
Мои розовые очки