Пакетный скрипт — выравнивание по правому краю

Опубликовано: 30 Сентября, 2022

Мы можем использовать пакетные сценарии для управления данными. У нас есть определенные команды и фильтры, чтобы очень легко манипулировать и редактировать определенные фрагменты данных для лучшей визуализации. Выравнивание по правому краю в пакетном сценарии — это одна из команд/фильтров, которая помогает выравнивать или упорядочивать текст желаемым образом. Используя эту команду, мы можем обрезать, переупорядочивать, выравнивать текст, который может быть не в том положении или структуре, которые были бы удобочитаемыми, и, следовательно, это может улучшить читаемость вывода скрипта.

Выровнять по правому краю

Выровнять по правому краю или параметр «:~» — это специальный фильтр для переменной в пакетном сценарии, который позволяет отображать только определенное количество символов справа. Допустим, у вас есть переменная x со значением «40004» и другая переменная y со значением «404», перед второй переменной есть пробел. Это выглядит как небольшая проблема, но резко ухудшает читаемость при отображении набора данных или данных, имеющих дело со столбцами и строками. Выравнивание по правому или левому краю — это фильтр, применяемый к этой переменной, такой как ~4, чтобы удалить первые 4 символа, которые здесь являются пробелами, для лучшего выравнивания данных.

Применение

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

Мы будем использовать тот же пример, который обсуждался в предыдущем разделе. ЧТОБЫ использовать операцию выравнивания по правому краю для переменных, мы используем команду :~number , где число является целым числом.

@echo off
set x=40004   
set y=   404

echo Before
echo X = %x%
echo Y = %y%
echo:

echo After
echo X = %x%
echo Y = %y:~3%

Приведенный выше скрипт использует фильтр выравнивания, который усекает переменную y слева на три символа. Таким образом, все пробелы в переменной y удаляются, и в команде отображается только строковое значение.

Давайте посмотрим на приведенный ниже пример, где мы используем отрицательные числа или индексы для выравнивания по правому краю.

@echo off
set x=40004
set y=   404

echo Before
echo X = %x%
echo Y = %y%
echo:

echo After
echo X = %x:~-3%
echo Y = %y:~-3%

В приведенном выше примере переменная x усекается, и отображаются только последние 3 символа. С другой стороны, переменная y ничем не отличается от предыдущего примера, так как мы снова отображаем последние три символа, но это действительно другой процесс извлечения символов из конца.