Linux слэш что это

Содержание
  1. Linux слэш что это
  2. Фундаментальные основы Linux. Часть III. Раскрытие команд командной оболочкой
  3. Глава 11. Операторы управления
  4. Точка с запятой (;)
  5. Амперсанд (&)
  6. Символ доллара со знаком вопроса ($?)
  7. Двойной амперсанд (&&)
  8. Двойная вертикальная черта (||)
  9. Комбинирование операторов && и ||
  10. Знак фунта (#)
  11. Экранирование специальных символов (\)
  12. Практическое задание: операторы управления
  13. Корректная процедура выполнения практического задания: операторы управления
  14. Почему в путях Unix и Windows систем используются разные слеши
  15. В чем разница между слеши и обратные слеши в путях? [дубликат]
  16. 4 ответов
  17. 15 специальных символов-команд, которых нужно знать для работы Bash Linux
  18. Что такое специальные символы?
  19. Домашний каталог
  20. . текущая директория
  21. .. Parent Directory
  22. / Path Directory Separator
  23. # Комментарий или «обрезка строк»
  24. ? — как знак подстановки символа
  25. * — как «подстановочный» знак последовательности символов
  26. [] — набор символов
  27. ; — разделитель команд оболочки
  28. & — «фоновый процесс»
  29. Linux принимают файл в качестве параметра и берут свои данные из этого файла. Большинство из этих команд также могут принимать данные из потока. Чтобы создать поток, используйте левую угловую скобку ( ), как показано в следующем примере, чтобы перенаправить файл в команду:
  30. > Перенаправление вывода
  31. | — вертикальная черта
  32. ! — логический оператор НЕ и оператор истории
  33. $ — выражения переменных
  34. Цитирование специальных символов
  35. Послесловие

Linux слэш что это

Оболочка bash использует несколько символов из числа 256 символов набора ASCII в специальных целях, либо для обозначения некоторых операций, либо для преобразования выражений. В число таких символов входят символы:

а также символ с кодом 0, символ возврата каретки (генерируемый клавишей Enter > ) и пробел. В зависимости от ситуации эти специальные символы могут трактоваться либо в их специальном значении, либо в буквальном, т. е. как литералы. Но мы в основном будем предполагать, что все эти символы зарезервированы и не должны использоваться в качестве литералов. Это касается в первую очередь использования их в именах файлов и каталогов, о чем мы уже говорили в гл. 4. Однако символы _ , — и . (знак подчеркивания, дефис и точка) часто используются в именах файлов, так что именно этот пример показывает, что специальное значение эти символы имеют не всегда. В именах файлов только символы точки ( . ) и слэша ( / ) имеют специальное значение. Символ слэша служит для разделения имен отдельных каталогов, а точка имеет специальное значение только если она является первым символом в имени файла (что означает, что файл является «скрытым»).

Давать сейчас точное определение того, какое специальное значение и в каких ситуациях имеет тот или иной специальный символ, нецелесообразно. Мы будем рассматривать их постепенно в следующих разделах, по мере того, как они потребуются. Однако есть три символа, которые имеют особое значение и которые поэтому необходимо рассмотреть в первую очередь.

Символ \ (обратный слэш) можно назвать «символом отмены специального значения» для любого из специальных символов, который стоит сразу вслед за \ . Например, если мы хотим использовать символ пробела в имени файла, мы должны вместо простого пробела поставить \ . Например, возможна следующая команда:

[user]$ cp two_words two\ words

Символы и « (одинарные и двойные кавычки) могут быть названы «символами цитирования». Любой из этих символов всегда используется в паре с его копией для обрамления какого-то выражения, совсем как в обычной прямой речи. Если какой-то текст взят в одинарные кавычки, то все символы внутри этих кавычек воспринимаются как литералы, никаким из них не придается специального значения. Если вернуться к тому же примеру с пробелами в имени файла, то можно сказать, что для того, чтобы дать файлу имя «two words» надо взять имя в кавычки:

[user]$ cp two_words ‘two words’

Различие в использовании символов ‘ и » состоит в том, что внутри одинарных кавычек теряют специальное значение все символы, а внутри двойных кавычек — все специальные символы кроме $ , ‘ и \ (знака доллара, одинарных кавычек и обратного слэша).

Источник

Фундаментальные основы Linux. Часть III. Раскрытие команд командной оболочкой

Глава 11. Операторы управления

В данной главе мы будем учиться размещать более одной команды в командной строке, используя для этого операторы управления . Также мы кратко обсудим связанные с этими операторами параметры ($?) и вопросы использования аналогичных операторам специальных символов (&).

Точка с запятой (;)

Амперсанд (&)

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

Символ доллара со знаком вопроса ($?)

Двойной амперсанд (&&)

Двойная вертикальная черта (||)

Комбинирование операторов && и ||

Знак фунта (#)

Экранирование специальных символов (\)

Обратный слэш в конце строки

Практическое задание: операторы управления

0. Ответ на каждый из вопросов может быть представлен с помощью единственной строки команды!

1. Какой бинарный файл исполняется при вводе команды passwd ?

2. Какого типа данный файл?

3. Выполните команду pwd два раза. (Помните о пункте 0.)

4. Выполните команду ls после команды cd /etc , но только в том случае, если исполнение команды cd /etc завершилось без ошибок.

5. Выполните команду cd /etc после команды cd etc , но только в том случае, если исполнение команды cd etc завершилось ошибкой.

6. Выведите строку «сработало» в случае успешного завершения исполнения команды touch test42 или строку «не сработало» в случае неудачного завершения. Все операторы должны находиться в одной строке и исполняться с привилегиями обычного пользователя (не пользователя root). Протестируйте полученную команду в вашей домашней директории и директории /bin/ .

7. Выполните команду sleep 6 ; для чего предназначена эта команда?

8. Выполните команду sleep 200 в фоновом режиме (без ожидая завершения ее исполнения).

9. Создайте строку команды, в рамках которой будет исполняться команда rm file55 . Ваша строка команды должна выводить строку ‘удалось’ в том случае, если файл file55 был удален и строку ‘не удалось’ в случае возникновения проблем.

10 (необязательное задание). Используйте команду echo для вывода строки «Hello World со странными’ символами \ * [ >

\\ .» (включая все кавычки).

Корректная процедура выполнения практического задания: операторы управления

0. Ответ на каждый из вопросов может быть представлен с помощью единственной строки команды!

1. Какой бинарный файл исполняется при вводе команды passwd ?

2. Какого типа данный файл?

3. Выполните команду pwd два раза. (Помните о пункте 0.)

4. Выполните команду ls после команды cd /etc , но только в том случае, если исполнение команды cd /etc завершилось без ошибок.

5. Выполните команду cd /etc после команды cd etc , но только в том случае, если исполнение команды cd etc завершилось ошибкой.

6. Выведите строку «сработало» в случае успешного завершения исполнения команды touch test42 или строку «не сработало» в случае неудачного завершения. Все операторы должны находиться в одной строке и исполняться с привилегиями обычного пользователя (не пользователя root). Протестируйте полученную команду в вашей домашней директории и директории /bin/ .

Читайте также:  Windows phone что будет если сделать сброс настроек

7. Выполните команду sleep 6 ; для чего предназначена эта команда?

Осуществляется ожидание в течение 6 секунд

8. Выполните команду sleep 200 в фоновом режиме (без ожидая завершения ее исполнения).

9. Создайте строку команды, в рамках которой будет исполняться команда rm file55 . Ваша строка команды должна выводить строку ‘удалось’ в том случае, если файл file55 был удален и строку ‘не удалось’ в случае возникновения проблем.

10 (необязательное задание). Используйте команду echo для вывода строки «Hello World со странными’ символами \ * [ >

Источник

Почему в путях Unix и Windows систем используются разные слеши

В ам, наверное, уже не раз приходилось замечать некоторую странность, а лучше сказать особенность в относительных и абсолютных путях современных операционных систем. Практически во всех Unix-подобных системах для разделения имен каталогов в пути используется косая черта с наклоном вправо, тогда как в Windows используется обратный слеш, то есть косая черта с наклоном влево. Интересно было бы знать, скрывается ли за этим какой-то смысл, либо появление обратного слеша в Windows это чистая случайность?

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

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

Однако как разделитель имен каталогов прямой слеш в UNIX стал использоваться только в 1970 году. Трудно сказать наверняка, почему разработчики выбрали именно этот символ, но наверняка этому есть разумное объяснение. Что же касается MS DOS, появившейся почти 10 лет после этого события, то в ней также стал использоваться прямой слеш, но не как разделитель имен каталогов, а как ключ командной строки, что явно указывает на прямое родство MS DOS с операционной системой СР/M, созданной еще в 1973 году Гэри Килдаллом.

В том, что в MS DOS 1.0 знак / не использовался как разделитель нет ничего удивительного, так как в первой версии Windows понятие структуры папок попросту отсутствовало. В версии MS DOS 2.0 появилась поддержка директорий, вот тут-то разработчики столкнулись с необходимостью построения иерархии каталогов. Поскольку прямой слеш оказался зарезервированным знаком, использоваться он уже не мог, не могла использоваться и точка (как в DEC), так как в Windows она служила в качестве разделителя между именем и расширением файла.

Выход из ситуации оказался простым. Вместо прямого слеша разработчики Microsoft решили использовать наиболее похожий символ. Таковым и оказался обратный слеш. Однако похоже на то, что разработчики Microsoft так и не удовлетворились принятым решением. Поэтому они решили реализовать поддержку обеих вариантов, и с того момента использовать в качестве разделителя путей стало возможно как прямой, так и обратный слеши. Можете не верить, но работает это и сейчас, правда с некоторыми ограничениями. Независимо от того выполните ли вы строку cd C:/Windows/Cursors или cd C:\Windows\Cursors результат будет один и тот же, в любом случае вы окажитесь в каталоге с курсорами. Тем не менее, использовать прямую черту в качестве разделителя путей не рекомендуется, так как в некоторых случаях это может привести к ошибке.

Источник

В чем разница между слеши и обратные слеши в путях? [дубликат]

в чем основное различие между прямой косой чертой (/) и обратной косой чертой () в отношении путей, как удаленных, так и локальных?

Если я правильно помню, косая черта используется для обозначения чего-то внутри компьютера или сети, такие как C:Windows или \172.12.1.34, а слеши используются для обозначьте что-то внешнее или внешнее по отношению к текущему компьютеру или сети, напримерhttp://www.google.com/.

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

4 ответов

Unix и его варианты всегда использовали косую черту (/) для обозначения иерархии файловой системы.

тем не менее, Windows обязана своим разделителем файловой системы, обратной косой чертой ( \ ), своему предшественнику MS-DOS. И MS-DOS не была инициатором этого. Он был привезен из операционной системы QDOS (которая заимствована из CP/M), которую MS купила и переработала в MS-DOS.

Так как большинство, если не все, веб-протоколы возникла в Unix (протоколов HTTP, FTP и т. д.), Microsoft соответствует с этими разделителями, чтобы сохранить совместимость.

Это не точное объяснение. Разделитель пути — это просто символ, маркер, который является несколько произвольным, но обычно выбирается для обозначения естественного разделения. Обратный Слэш как разделитель пути происходит из рода СР/M, DOS и Windows. Слэш приходит из Unix и, возможно, других систем до него.

разделитель URL-адресов Интернета был выбран в качестве косой черты, так как большинство разработчиков стандартов знакомы с Unix. В Unix Слэш как разделитель пути обычно считается каноническим сепаратором. Его положение на клавиатуре также облегчает ввод текста для большинства людей, которым приходится вводить его много.

даже кроссплатформенные языки сценариев, такие как Python, используют косую черту — «нормализованную форму» указания путей.

на уровне реализации windows будет обрабатывать ‘ / ‘так же, как и’\’. Я бы просто использовал’/’. Это сделает все приложения портативными. MySQL и python также переводит » / » на то, что вам нужно в вашей системе, в зависимости от того, какой разделитель путей они используют.

‘ \ ‘ используется в других областях, таких как регулярные выражения, и некоторые терминалы и языки программирования в качестве escape-символа. Это гарантирует, что следующий символ после него будет интерпретирован как литерал символ, например \n \r в конце строк.

Что касается обозначения внутренних или внешних систем, то это не так. ‘/’Был более популярен на ранних этапах работы с системами *nix. Microsoft тогда стала популярной, и теперь » \ » — это то, что люди ожидают. Но, как я уже упоминал, Microsoft должна быть posix (posix-стандарт о том, как должны работать операционные системы) совместимым, что означает, что вы можете заменить все » \ » на » / » в большинстве мест, и каждая вещь будет работать проблемы.

Читайте также:  Windows помощь при вводе

Источник

15 специальных символов-команд, которых нужно знать для работы Bash Linux

Всем доброго времени суток и других разностей.

Если вы хотите освоить оболочку Bash в Linux , macOS или другой UNIX -подобной системе, то специальные символы (например,

, *, | и >) имеют решающее значение.

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

Что такое специальные символы?

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

Иногда вам просто нужно напечатать символ, и вам не нужно, чтобы он действовал как «магический». Есть способ, которым вы можете использовать символ, чтобы представлять себя, а не его специальную функцию.

Мы покажем вам, какие символы являются «специальными» или «мета-» символами, а также как вы можете использовать их функционально и буквально.

Домашний каталог

) является сокращением для вашего домашнего каталога. Это означает, что вам не нужно вводить полный путь к вашей домашней директории в командах. Где бы вы ни находились в файловой системе, вы можете использовать эту команду для перехода в ваш домашний каталог:

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

. текущая директория

Точка (.) Представляет текущий каталог. Вы увидите это в списках каталогов, если используете -a опцию (все) с ls .

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

Это говорит Bash искать script.sh файл в текущем каталоге . Таким образом, он не будет искать каталоги в вашем пути для поиска исполняемого файла или сценария.

.. Parent Directory

Двойной период или «двойная точка» (..) представляет родительский каталог вашего текущего. Вы можете использовать это, чтобы перейти на один уровень вверх в дереве каталогов.

Вы также можете использовать эту команду с относительными путями — например, если вы хотите подняться на один уровень вверх в дереве каталогов, а затем ввести другой каталог на этом уровне.

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

/ Path Directory Separator

Вы можете использовать косую черту (/) — часто называемую косой чертой — для разделения каталогов в имени пути.

Одна косая черта представляет кратчайший возможный путь к каталогу. Поскольку все в дереве каталогов Linux начинается с корневого каталога, вы можете использовать эту команду для быстрого перехода в корневой каталог:

# Комментарий или «обрезка строк»

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

Однако он не игнорируется, потому что он добавлен в историю команд.

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

В этом примере мы присваиваем текст « Dave Geek! » переменной.

Эта команда использует echo для печати слова « How-To » в окне терминала. Он извлекает значение, хранящееся в строковой переменной, через расширение параметра . Поскольку мы добавляем хеш и текст « Dave », он обрезает эту часть строки перед тем, как передать её в echo .

Это не меняет значение, хранящееся в строковой переменной; это влияет только на то, что отправлено echo . Мы можем использовать echo для печати значения строковой переменной еще раз и проверить это:

? — как знак подстановки символа

Оболочка Bash поддерживает три символа подстановки, одним из которых является знак вопроса ( ? ). Вы используете «подстановочные» знаки для замены символов в шаблонах имен файлов. Имя файла, которое содержит «подстановочный» знак, формирует шаблон, который соответствует диапазону имен файлов, а не одному.

«Подстановочный» знак вопроса представляет ровно один символ. Рассмотрим следующий шаблон имени файла:

Это переводится как: «перечислить любой файл с именем, начинающимся с « badge » и сопровождаемым любым отдельным символом перед расширением имени файла».

Это соответствует следующим файлам. Обратите внимание, что у некоторых есть цифры, а у некоторых есть буквы после части имени файла в виде значка. «Подстановочный» знак вопроса будет соответствовать как буквам, так и цифрам.

Этот шаблон имени файла не соответствует значению « badge.txt », поскольку в имени файла нет ни одного символа между «значком» и расширением файла. «Подстановочный» знак вопроса должен совпадать с соответствующим символом в имени файла.

Вы также можете использовать знак вопроса, чтобы найти все файлы с определенным количеством символов в именах файлов. Здесь перечислены все текстовые файлы, которые содержат ровно пять символов в имени файла:

* — как «подстановочный» знак последовательности символов

Вы можете использовать «подстановочный» знак звездочка ( * ) для обозначения любой последовательности символов, включая отсутствие символов. Рассмотрим следующий шаблон имени файла:

Это соответствует всем следующим:

Он соответствует « badge.txt », потому что «подстановочный» знак представляет собой любую последовательность символов или не содержит символов.

Эта команда сопоставляет все файлы, называемые «исходными», независимо от расширения файла.

[] — набор символов

Как указано выше, вы используете знак вопроса для обозначения любого отдельного символа, а звездочку — для любой последовательности символов (включая символы).

Вы можете сформировать «подстановочный» знак с квадратными скобками ([]) и символами, которые они содержат. Соответствующий символ в имени файла должен соответствовать хотя бы одному из символов в наборе символов подстановки.

В этом примере команда переводит: «любой файл с» .txt », имя файла , начиная с „badge_0,“ и в котором следующий символ либо 2, 4 или 6.»

Вы можете использовать более одного набора скобок на шаблон имени файла:

Вы также можете включить диапазоны в набор символов. Следующая команда выбирает файлы с номерами от 21 до 25 и от 31 до 35 в имени файла.

; — разделитель команд оболочки

В командной строке Вы можете вводить столько команд, сколько Вам нужно, если Вы разделяете каждую из них точкой с запятой ( ; ). Мы сделаем это в следующем примере:

Читайте также:  Through windows and walls

Обратите внимание, что вторая команда выполняется даже в случае сбоя первой, третья — даже в случае сбоя второй и тд.

Если Вы хотите остановить последовательность выполнения в случае сбоя одной команды, используйте двойной амперсанд ( && ) вместо точки с запятой:

& — «фоновый процесс»

После того, как Вы введете команду в окне терминала и она завершится, Вы вернетесь в командную строку. Как правило, — это занимает всего минуту или две. Но если вы запустите другое приложение, например gedit , вы не сможете использовать окно терминала, пока не закроете приложение.

Однако вы можете запустить приложение как фоновый процесс и продолжать использовать окно терминала. Для этого просто добавьте амперсанд в командную строку:

Bash показывает идентификатор процесса, который был запущен, а затем возвращает вас в командную строку. Затем Вы можете продолжать использовать окно терминала.

Linux принимают файл в качестве параметра и берут свои данные из этого файла. Большинство из этих команд также могут принимать данные из потока. Чтобы создать поток, используйте левую угловую скобку ( ), как показано в следующем примере, чтобы перенаправить файл в команду:

Когда команда перенаправляет ввод в нее, она может вести себя иначе, чем при чтении из именованного файла.

Если мы используем wc для подсчета слов, строк и символов в файле, он печатает значения, а затем имя файла. Если мы перенаправим содержимое файла wc , он печатает те же числовые значения, но не знает имени файла, из которого поступили данные. Он не может напечатать имя файла.

Вот несколько примеров того, как вы можете использовать wc :

> Перенаправление вывода

Вы можете использовать правую угловую скобку ( > ), чтобы перенаправить вывод команды (обычно в файл). Вот пример:

Перенаправление вывода также может перенаправлять сообщения об ошибках, если вы используете цифру ( 2 в нашем примере) с > . Вот как это сделать:

| — вертикальная черта

Она же «трубка» объединяет команды. Он принимает выходные данные одной команды и передает их следующей в качестве входных данных. Количество переданных команд (длина цепочки) произвольно.

Здесь мы будем использовать cat для передачи содержимого файла words.txt grep , которая извлекает любую строку, содержащую « C » в нижнем или верхнем регистре, grep и затем передает эти строки sort . sort использует -r (обратный) вариант, поэтому отсортированные результаты будут отображаться в обратном порядке.

Мы набрали следующее:

! — логический оператор НЕ и оператор истории

Восклицательный знак ( ! ) — это логический оператор, который означает НЕ .

В этой командной строке есть две команды:

  • Первая команда — это текст в квадратных скобках;
  • Вторая команда — это текст, который следует за двойными амперсандами && .

Первая команда использует ! в качестве логического оператора. Квадратные скобки указывают на то, что будет проведено испытание. Опция -d (directory) проверяет наличие каталога с именем backup . Вторая команда создает каталог.

Поскольку двойные амперсанды разделяют две команды, Bash выполнит вторую только в случае успеха первой . Однако это противоположность того, что нам нужно. Если проверка для «резервной» директории прошла успешно, нам не нужно её создавать. И если проверка для каталога « backup » не пройдена, вторая команда не будет выполнена, а отсутствующий каталог не будет создан.

Это где логический оператор ! входит. Он действует как логическое НЕ . Таким образом, если тест пройден успешно (т.е каталог существует ), он ! переходит на «НЕ успешно», что является ошибкой. Итак, вторая команда не активирована.

Если проверка каталога не пройдена (т.е каталог не существует), ! ответ изменяется на «НЕ сбой», что является успехом . Таким образом, команда для создания недостающего каталога будет выполнена.

Чтобы проверить состояние папки резервной копии, вы используете ls команду и параметры -l (длинный список) и -d (каталог), как показано ниже:

Вы также можете запускать команды из истории команд с восклицательным знаком. Команда history выводит список вашей истории команд, а затем Вы набираете номер команды, с которой хотите выполнить ее повторно ! , как показано ниже:

Следующая команда повторно запускает предыдущую команду:

$ — выражения переменных

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

Вы можете использовать, echo, чтобы увидеть значение, которое содержит переменная, — просто перед именем переменной следует знак доллара ( $ ), как показано ниже:

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

Добавьте фигурные скобки ( <> ) вокруг знака доллара и выполните расширение параметра, чтобы получить значение переменной и разрешить дальнейшие преобразования значения.

Это создает переменную, которая содержит строку символов, как показано ниже:

Используйте следующую команду для вывода строки в окно терминала:

Чтобы вернуть подстроку, начиная с позиции 6 всей строки, используйте следующую команду (смещение нуля, поэтому первая позиция равна нулю):

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

Используйте следующую команду, чтобы отобразить подстроку, которая начинается с четвертой позиции и содержит следующие четыре символа:

Цитирование специальных символов

Если вы хотите использовать специальный символ в качестве литерального (не специального) символа, вы должны указать оболочку Bash . Это называется цитированием, и есть три способа сделать это.

Если вы заключите текст в кавычки (« … »), это не позволит Bash воздействовать на большинство специальных символов, а они просто будут печатать. Однако, одним заметным исключением является знак доллара ( $ ). Он по-прежнему действует как символ для выражений переменных, поэтому вы можете включить значения из переменных в свой вывод.

Например, эта команда печатает дату и время:

Если вы заключите текст в одинарные кавычки (‘ … ‘), как показано ниже, он останавливает функцию всех специальных символов:

Вы можете использовать обратную косую черту ( \ ), чтобы не использовать следующий символ в качестве специального символа. Это называется «избегать» персонажа; см. пример ниже:

Послесловие

В общем, просто думайте о специальных символах как об очень коротких командах. Если вы запомните их использование, то это может принести огромную пользу Вашему пониманию оболочки Bash и сценариев (скриптов, команд) других людей (если Вы пользуетесь чьими-то шаблонами).

В двух словах как-то так. Если есть вопросы, мысли, дополнения и всё такое прочее, то добро пожаловать в комментарии к этой записи.

Источник

Оцените статью