Linux что означает символ
Некоторые символы имеют для редактора особое значение. К ним относятся: «.», «\», «$», «*», «[«, «]», «^», «&». Эти символы обычно называются метасимволами.
В зависимости от контекста символ «.» имеет несколько значений. lin В левой части команды подстановки и при поиске с помощью конструкции «/. /» символ «.» означает любой одиночный символ. Таким образом, в результате поиска будут найдены строки текста, содержащие символы «x» и «y», между которыми находится любой символ, например:
Символ «.», используемый для указания номера строки обозначает текущую строку.
Примеры. замена символа «a» на символ «,» в строке, следующей за текущей. Символ «.», записанный в правой части команды замены «s», не имеет специального значения; замена символа «,» на символ «.» в строках с 1-й по 5-ю включительно.
Такая команда, примененная, например к строке: дает результат:
6.16.2. Метасимвол \ (обратная дробная черта)
Обратная дробная черта (или обратный слэш) отменяет специальное значение, которое может иметь следующий за ней символ, в частности, «\.» означает точку, а не «любой символ». Примеры. замена символа «.» на символ «?»; поиск строк, содержащих «.pp»; поиск символа «\»; поиск символа «/»; удаление в текущей строке последовательности символов «.».
Для разделения полей в команде «s» может использоваться любой символ, а не только дробная черта (однако для контекстного поиска требуется использовать дробную черту). Например, если строка уже содержит много символов дробной черты, как в строке: то можно использовать в качестве разделителей символ «:» (двоеточие). Удалить все символы дробной черты можно с помощью команды:
Если для стирания символов и удаления строк используются клавиши «#» и «@», их нужно вводить в виде «\#» и «\@» (это относится не только к работе с ed).
Если текст вводится с помощью одной из команд: «a», «i» или «c», то символ обратной дробной черты не является специальным, и требуется нажимать эту клавишу только один раз для каждой обратной дробной черты.
В команде: первый символ «$» означает последнюю строку файла, второй означает конец этой строки, а третий действительно является символом денежной единицы, который добавляется к указанной строке.
6.16.4. Метасимвол ^ (отрицание)
Метасимвол «^» применяется так же, как метасимвол «$», за исключением того, что он указывает начало строки, а не конец.
Примеры. поиск строки, начинающейся со слова «время»; поместить пробел в начало текущей строки.
Метасимволы можно объединять. Например, для того, чтобы найти строку, содержащую только символы «pp» можно использовать команду: /^.pp$/
6.16.5. Метасимвол * (звездочка)
Метасимвол «*» означает, что символ, за которым он следует, может повторяться произвольное число раз.
Если в тексте имеется большое количество пробелов, их можно сжать, например: В результате выполнения команды: получим:
Если скомбинировать точку и *, то можно сопоставить все символы. С помощью этой комбинации можно, например, заменить все символы в последней части строки: ed автоматически запоминает последнюю строку символов в шаблоне поиска или замененный текст. Однако вы должны подсказать ed, что нужно повторить замену, используя знак «%». Знак «%» позволяет вам сделать одинаковую замену во многих строках, не используя глобальной замены. Например, заменим слово money на слово gold, повторим последнюю замену в строках от 1 до 3:
6.16.6. Метасимволы [] (квадратные скобки)
Метасимволы «[]» позволяют определить подмножество символов, которые необходимо распознавать при выполнении операции поиска или подстановки. Запись группы символов, заключенных в квадратные скобки, означает: «любой одиночный символ из указанных». Например, если «[0123456789]», это будет означать: «любая цифра». Можно записать и короче: «2». Запись двух символов, разделенных знаком минус, означает задание интервала в
лексикографической последовательности символов. Так, запись «[А-Я]» означает: «прописная русская буква», а запись: «[a-z] [a-z0-9]*» означает последовательность латинских букв и цифр, начинающуюся с буквы.
Указание в начале класса символа «^» означает «ни один из следующих символов». Например: обозначает «любой символ, за исключением цифры».
Примеры. удаление всех цифр в начале каждой строки; поиск первой строки, не начинающейся символом пробела или табуляции.
Внутри класса символов могут присутствовать любые символы и, чтобы избежать путаницы, в квадратных скобках символы принципиально не имеют специального значения. Например, чтобы найти специальные символы, можно использовать команду: Внутри «[. ]» символ «[» не является специальным. Чтобы включить символ «]» в класс символов, нужно указать его первым.
6.16.7. Метасимвол & (амперсенд)
Символ «&» используется в первую очередь для сокращения вводимого текста.
Предположим, имеется строка: и требуется преобразовать ее в строку: конечно, для этого можно воспользоваться командой: однако требование повторно указывать слово «ВРЕМЯ» кажется неразумным. Для того, чтобы избежать этого повторения, используется символ «&». В правой части команды подстановки амперсенд означает «найденный текст», так что можно ввести команду: где «&» будет означать «ВРЕМЯ». Конечно, в данном примере экономия будет незначительной, однако если количество символов велико или представляет собой нечто вроде «.*», которому соответствует большой кусок текста, экономится много вводимых символов. Снижается также вероятность совершения ошибки при вводе заменяющего текста. Например, для того, чтобы заключить в скобки строку, независимо от ее длины, можно использовать команду:
Амперсенд может встречаться в правой части команды несколько раз. Команда: построит строку: а команда: преобразует исходную строку в:
Чтобы получить настоящий символ «&», используется обратная дробная черта для отмены его специального значения. Команда: заменит слово «амперсенд» на символ «&». Обратите внимание на то, что символ «&» является специальным только в правой части команды, в левой части он не имеет специального значения.
Русские Блоги
Специальные символы оболочки Linux
Специальные символы оболочки Linux
Подстановочный знак
Соответствовать любому персонажу
try * c // match: try1.c try.c try.basic
Соответствует любому одиночному символу
Соответствует любому определенному в круглых скобкахХарактер
[Mm] akefile // Соответствие Makefile makefile
file 4 // соответствие file1 file2 file3 file4 file5
* file 20 // соответствие file1 file2 *
Если он заключен в квадратные скобки, это означает, что он не соответствует ни одному символу, указанному в скобках.
кавычки
Перенаправление ввода
H O M E e c h o » role=»presentation» style=»position: relative;»> H O M E e c h o PATH
Используйте команду env для отображения всех переменных среды
Используйте команду set для отображения всех локально определенных переменных оболочки (локальных переменных)
Используйте команду readonly для установки переменных только для чтения
Изменить переменные среды
Локальная переменная
Определено, изменено или удалено пользователем.
Правила именования
Формат такой же, как у языка C
Присвоение переменной
Ссылочная переменная
Просмотреть все команды набора переменных
Команда очистки переменных-unset
Описание
Переменные оболочки не имеют ограничений по классу хранения и типу (можно понимать как все строковые переменные);
Если значение содержит пробелы, присваивание должно быть заключено в кавычки;
Если переменная появляется в начале или середине длинной строки, во избежание путаницы имя переменной следует заключить в фигурные скобки.
Переменная местоположения
Если в сценарии более 9 параметров, используйте команду shift, чтобы использовать более 9 параметров.
Формат:
shift [n] n представляет количество бит для сдвига;
Если значение n не указано, по умолчанию n равно 1
Простой 9 комментариев
А Linux скрипт это обычно относится к башу. Не стоит настолько придираться к вопросам, а то можно придраться и к ответам =)
1. в Linux нет команд. Linux это ядро.
Переменная PS1 собственно и содержит строку приглашения, которая содержит обычно имя юзера, имя хоста, текущая директория и этот символ.
В общем я добился от автора объяснения, что ему нужно
То о чем ты говоришь, называется не команда, а переменная. Это и сбило всех с толку.
Объяснение очень простое.
Поскольку в баше ОЧЕНЬ нестрогий синтаксис, и любой текст воспринимается как строка без всяких кавычек, то нужен способ отличить переменную от просто строки. Если ты напишешь
При этом для присвоения значения переменной знак доллара не нужен, поскольку система видит по знаку =, что речь идет о присвоении (и видимо поэтому нельзя ставить проблелы вокруг знака =).
Да, нелогично. Но не все в нашей жизни поддается логике
Linux что означает символ
Некоторые символы имеют для редактора особое значение. К ним относятся: «.», «\», «$», «*», «[«, «]», «^», «&». Эти символы обычно называются метасимволами.
В зависимости от контекста символ «.» имеет несколько значений. lin В левой части команды подстановки и при поиске с помощью конструкции «/. /» символ «.» означает любой одиночный символ. Таким образом, в результате поиска будут найдены строки текста, содержащие символы «x» и «y», между которыми находится любой символ, например:
Символ «.», используемый для указания номера строки обозначает текущую строку.
Примеры. замена символа «a» на символ «,» в строке, следующей за текущей. Символ «.», записанный в правой части команды замены «s», не имеет специального значения; замена символа «,» на символ «.» в строках с 1-й по 5-ю включительно.
Такая команда, примененная, например к строке: дает результат:
6.16.2. Метасимвол \ (обратная дробная черта)
Обратная дробная черта (или обратный слэш) отменяет специальное значение, которое может иметь следующий за ней символ, в частности, «\.» означает точку, а не «любой символ». Примеры. замена символа «.» на символ «?»; поиск строк, содержащих «.pp»; поиск символа «\»; поиск символа «/»; удаление в текущей строке последовательности символов «.».
Для разделения полей в команде «s» может использоваться любой символ, а не только дробная черта (однако для контекстного поиска требуется использовать дробную черту). Например, если строка уже содержит много символов дробной черты, как в строке: то можно использовать в качестве разделителей символ «:» (двоеточие). Удалить все символы дробной черты можно с помощью команды:
Если для стирания символов и удаления строк используются клавиши «#» и «@», их нужно вводить в виде «\#» и «\@» (это относится не только к работе с ed).
Если текст вводится с помощью одной из команд: «a», «i» или «c», то символ обратной дробной черты не является специальным, и требуется нажимать эту клавишу только один раз для каждой обратной дробной черты.
В команде: первый символ «$» означает последнюю строку файла, второй означает конец этой строки, а третий действительно является символом денежной единицы, который добавляется к указанной строке.
6.16.4. Метасимвол ^ (отрицание)
Метасимвол «^» применяется так же, как метасимвол «$», за исключением того, что он указывает начало строки, а не конец.
Примеры. поиск строки, начинающейся со слова «время»; поместить пробел в начало текущей строки.
Метасимволы можно объединять. Например, для того, чтобы найти строку, содержащую только символы «pp» можно использовать команду: /^.pp$/
6.16.5. Метасимвол * (звездочка)
Метасимвол «*» означает, что символ, за которым он следует, может повторяться произвольное число раз.
Если в тексте имеется большое количество пробелов, их можно сжать, например: В результате выполнения команды: получим:
Если скомбинировать точку и *, то можно сопоставить все символы. С помощью этой комбинации можно, например, заменить все символы в последней части строки: ed автоматически запоминает последнюю строку символов в шаблоне поиска или замененный текст. Однако вы должны подсказать ed, что нужно повторить замену, используя знак «%». Знак «%» позволяет вам сделать одинаковую замену во многих строках, не используя глобальной замены. Например, заменим слово money на слово gold, повторим последнюю замену в строках от 1 до 3:
6.16.6. Метасимволы [] (квадратные скобки)
Метасимволы «[]» позволяют определить подмножество символов, которые необходимо распознавать при выполнении операции поиска или подстановки. Запись группы символов, заключенных в квадратные скобки, означает: «любой одиночный символ из указанных». Например, если «[0123456789]», это будет означать: «любая цифра». Можно записать и короче: «9». Запись двух символов, разделенных знаком минус, означает задание интервала в
лексикографической последовательности символов. Так, запись «[А-Я]» означает: «прописная русская буква», а запись: «[a-z] [a-z0-9]*» означает последовательность латинских букв и цифр, начинающуюся с буквы.
Указание в начале класса символа «^» означает «ни один из следующих символов». Например: обозначает «любой символ, за исключением цифры».
Примеры. удаление всех цифр в начале каждой строки; поиск первой строки, не начинающейся символом пробела или табуляции.
Внутри класса символов могут присутствовать любые символы и, чтобы избежать путаницы, в квадратных скобках символы принципиально не имеют специального значения. Например, чтобы найти специальные символы, можно использовать команду: Внутри «[. ]» символ «[» не является специальным. Чтобы включить символ «]» в класс символов, нужно указать его первым.
6.16.7. Метасимвол & (амперсенд)
Символ «&» используется в первую очередь для сокращения вводимого текста.
Предположим, имеется строка: и требуется преобразовать ее в строку: конечно, для этого можно воспользоваться командой: однако требование повторно указывать слово «ВРЕМЯ» кажется неразумным. Для того, чтобы избежать этого повторения, используется символ «&». В правой части команды подстановки амперсенд означает «найденный текст», так что можно ввести команду: где «&» будет означать «ВРЕМЯ». Конечно, в данном примере экономия будет незначительной, однако если количество символов велико или представляет собой нечто вроде «.*», которому соответствует большой кусок текста, экономится много вводимых символов. Снижается также вероятность совершения ошибки при вводе заменяющего текста. Например, для того, чтобы заключить в скобки строку, независимо от ее длины, можно использовать команду:
Амперсенд может встречаться в правой части команды несколько раз. Команда: построит строку: а команда: преобразует исходную строку в:
Чтобы получить настоящий символ «&», используется обратная дробная черта для отмены его специального значения. Команда: заменит слово «амперсенд» на символ «&». Обратите внимание на то, что символ «&» является специальным только в правой части команды, в левой части он не имеет специального значения.
Что такое метасимволы Linux и как вы их используете
Узнайте, как метасимволы Linux расширяют использование инструментов командной строки
Согласно Википедии, метасимвол – это любой символ, имеющий особое значение, например, карат (^), знак доллара ($) или звездочка (*).
С точки зрения Linux, существует множество таких метасимволов, и их значения различаются в зависимости от того, какую команду или программу Linux вы используете.
Полная остановка как метасимвол (.)
Скромный полный останов используется для указания текущей позиции при запуске таких команд, как cd, find или sh, но в таких приложениях, как awk, grep и sed, это подстановочный знак, используемый для обозначения определенного числа любого символа.
Например, следующая команда найдет все mp3-файлы в текущей папке и ее подпапках.
Если вы выполните эту команду в своем текущем рабочем каталоге (pwd), вы, вероятно, увидите возвращенные результаты, при условии, что вы храните ваши mp3-файлы в папке музыки в вашей домашней папке.
Теперь посмотрите на эту команду:
Команда ps выводит список всех запущенных процессов на вашем компьютере. Команда grep берет строки ввода и ищет шаблон.
Если у вас запущен Firefox, вы получите совпадение. Точно так же, если у вас запущена программа с именем fonefox или freefox, они также будут возвращены.
Если вы знаете, что вам нужно искать только один символ, а не использовать “.” метасимвол, вы можете использовать «?». С помощью “?” относится к любому отдельному символу либо в начале, либо в конце шаблона.
Звездочка как метасимвол (*)
Звездочка является более широко известным метасимволом и используется для обозначения нуля или более любого символа при поиске шаблона.
Стоит отметить, что это немного отличается, потому что звездочка означает ноль или более, поэтому, кроме поиска Firefox, Facefox и Fonefox, он также может найти Flutefox, Ferretfox и даже просто Fefox.
Карат как метасимвол (^)
Карат (^) используется для обозначения начала строки или строки. Так как это используется?
Команда ls используется для вывода списка всех файлов в папке следующим образом:
Если вы хотите знать все файлы в папке, которая начинается с определенной строки, такой как «gnome», тогда для указания этой строки можно использовать карат.
Обратите внимание, что здесь перечислены только файлы, начинающиеся с gnome. Если вам нужны файлы с гномом в любом имени файла, вам следует вернуться к использованию звездочки.
В приведенном выше примере ls возвращает список имен файлов и передает этот список команде grep, которая используется для сопоставления с образцом. Grep знает, что символ карата означает найти все, что начинается с символов, следующих за ним, и в данном случае это «гном».
Символ доллара как метасимвол ($)
Символ доллара может иметь несколько значений в качестве метасимвола в Linux.
При использовании для сопоставления с образцами это означает противоположность каратам и обозначает любой образец, который оканчивается определенной строкой.
Символ доллара также используется для доступа к переменным среды в оболочке bash.
Метасимволы (\\)
Теперь посмотрим на следующую команду:
Как вы думаете, что возвращается? И f.refox, и firefox возвращаются, потому что они оба соответствуют шаблону.
Чтобы вернуть только f.refox, вам нужно будет выйти из полной остановки, чтобы фактически означать полную остановку следующим образом:
Скобки как метасимвол ([])
Вы можете использовать скобки при поиске материалов. Скобки позволяют указать конкретные буквы, которые вы хотите сопоставить в любом месте шаблона.
В этом списке перечислены все файлы, которые начинаются с букв a, b или c.
Вы можете использовать скобки в начале, конце или даже в середине шаблона поиска.
Если вы хотите искать большой диапазон букв, вы можете вместо этого использовать символ переноса (-). Например, ls [a-h] * вернет все файлы, которые начинаются с любой буквы от a до h.
Метасимвол Акцента Могила
Во всех приведенных выше примерах метасимвол канала использовался для отправки результатов одной команды (например, команды ls) другой команде (например, команды grep).
Альтернативный способ сделать это – использовать обратную кавычку (также известную как акцентная могила), чтобы вставить результаты одной команды в другую команду.




