Сервісний центр VPSGroup ремонт комп'ютерної техніки, заправка картриджів, ремонт оргтехніки, Київ, Виставковий центр, Васильківська, 55

Використання Escape-послідовностей в PowerShell.

Практично в кожній мові програмування є еscape-символи - спеціальні символи, за допомогою яких можна змінювати властивості наступних за ними символів. Наявність escape-символа говорить про те, що наступний за ним символ (або символи) слід обробляти особливим чином. Комбінація escape-символа і наступних за ним символів називається escape-послідовністю.

В PowerShell як escape-символа використовується знак зворотного апострофа ( `). З його допомогою можна проводити наступні операції.

Екранування змінної

Escape-символ перед знаком $ забороняє підставити замість змінної її значення. Наприклад так ми отримаємо значення змінної $ a:

$ a = 200
"The value is $ a"

а так її ім'я:

$ a = 200
"The value is` $ a "



Примітка.Зверніть увагу, що escape-послідовності обов'язково повинні бути укладені в лапки.

Ще приклад. Припустимо, що нам необхідно використовувати знак $ (dollar) за його прямим призначенням, наприклад вивести фразу:

"It costs $ 200"

Однак після знака $ ми отримаємо пусте місце.А ось якщо перед знаком $ поставити escape-символ, то все вийде як треба:

"It costs` $ 200 "



Екранування лапок

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

"He said" yes "."

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

"He said` "yes`"."



Перенесення рядка

Escape-символ в кінці рядка вказує на те, що команда буде продовжена на наступному рядку. Таким чином зручно розбивати на частини довгі команди. Наприклад:

Get-Process | `
where`
{$ _. Name -match" \ d "}



Форматування

Деякі escape-послідовності при використанні з лапками створюють керуючі інструкції, за допомогою яких можна управляти висновком.PowerShell розуміє наступні послідовності:

`0 - порожній символ (Null);
` a - звуковий сигнал передається на системний динамік;
`b - повернення (backspace);
`f - друк з нової сторінки;
` n - символ нового рядка;
`r - назад до початку рядка;
` t - горизонтальна табуляція;
`v - вертикальна табуляція.

Їх зручно використовувати в тому випадку, якщо потрібно певним чином відформатувати висновок команди. Для прикладу оформимо вихідні дані у вигляді таблиці:

"` 0 one `t two` t three n `0` n four `t five` t six `n seven` t eight `t nine` n ` 0 "



Довідку по escape-послідовностей PowerShell можна викликати командою Get-Help about_esc..