Вступ до масиву в PowerShell
Масив - це тип структури даних, який може використовуватися для зберігання колекції елементів, колекція елементів може бути одного типу даних або різним. До елементів у масиві можна отримати доступ за допомогою індексу. Індекс масиву зазвичай починається з 0, тому для доступу до першого елемента потрібно використовувати індекс (0). Як правило, на масиві можуть бути лише дві операції, тобто додавання елемента до масиву або видалення елемента. У цій статті ми дізнаємось про масив у PowerShell.
Визначення масиву в PowerShell
Масив можна визначити будь-яким із наступних способів,
@ () - один із способів визначення масиву.
Приклад:
$Subject = @('History', 'Geo', 'Maths')
- Масив також може бути створений як розділений комою список.
$test='testone', 'testtwo', 'testthree'
- Масив може бути створений для конкретного елемента типу даних наступним чином,
(int()) $numbersarray = 1, 2, 3, 4, 5
Наведене вище є цілим масивом, і він може містити лише цілі значення.
Доступ до масиву
Давайте визначимо масив,
Приклад:
('test1', 'test2', 'test3', 'test4')
$ test (0) поверне тест1, $ тест (3) поверне тест4. Багато мов дозволяють задавати лише один індекс, тоді як в PowerShell можуть бути використані кілька індексів одночасно.
У наведеному вище тесті $ (1, 3) повернеться,
тест2
тест4
Операції на масиві
Додавання елементів до масиву. Давайте подивимось приклад того, як додати елемент до існуючого масиву.
Приклад:
('welcome', 'home')
Для додавання до вищевказаного масиву використовується оператор '+ ='.
$ test + = 'Raj'
Запуск $ test повернеться,
Ласкаво просимо
додому
Радж
Отримання масиву масиву
Тут ми пояснюємо, як використовувати наступний вхід для отримання підрахунку масиву.
Вхід:
('test1', 'ertr', 'fgdfgfd', 'dfgfdg', 'dfdfsd', 'dfgfdgdfg')
$ test.Count поверне 6, що є кількістю / довжиною масиву.
1. Сортування елементів у масиві
Оператор сортування може використовуватися для сортування елементів масиву, якщо елементи одного типу даних.
Вхід:
('oneee', 'zddsdsad', 'thraewawe')
$test |sort
Вищевказана команда буде сортувати елементи у порядку зростання
Вихід:
Вхід:
$test |sort -Descending will sort the elements in the descending order
Вихід:
2. Оновлення елемента в масиві
Індекс можна використовувати для оновлення елемента в масиві
Вхід:
('oneee', 'zddsdsad', 'thraewawe')
$test(0)='changed'
Наведена вище команда змінить "один" на "змінено". Виконання $ test повернеться
Вихід:
3. Пошук елемента в масиві
Для перевірки масиву на значення може використовуватися аналогічний оператор
Вхід:
('viki', ramu, 'aravind', 'vikram')
$test -like "*vik*"
Вихід:
Багатовимірний масив в PowerShell
Ми можемо створити багатовимірний масив наступним чином,
$testMultidimensionalArrays = @(1, 2, 3), @(4, 5, 6), @(7, 8, 9)
Кожен масив має один рядок та три стовпці.
Цикл масиву
Як і в будь-яких інших мовах, цикл for може використовуватися для циклу елементів у масиві.
Вхід:
('viki', 'ramu', 'aravind', 'vikram')
for($i=0;$i -lt $test.Length; $i++)
(
Write-Host $test($i) )
Вихід :
Для-кожного можна використовувати для виконання дії проти кожного елемента в масиві.
Вхід:
(1, 4, 5, 6, 7, 8, 9, 10)
foreach($i in $test)
(
$i=$i+5
Write-Host $i
)
Вихід:
Список масиву в PowerShell
Одним із недоліків Array є додавання до нього елементів, щоб подолати, що у нас є список масивів.
Далі йде синтаксис для створення списку масивів,
$myarray = (System.Collections.ArrayList)::new()
$myarray.Add(1)
$myarray.Add(2)
$myarray.Add(3)
$myarray
Перший рядок - це спосіб ініціалізації списку масивів, а наступні рядки - додавання елементів до ArrayList
Продуктивність списку масиву проти масиву
Наступні приклади показують різницю в продуктивності під час виконання операції зі списку масивів та масивів
Вхід:
Measure-Command -Expression ( 0..250 | ForEach-Object ( $arr += $_+1 ))
$arrlit = (System.Collections.ArrayList)@()
$f arrlit _performance = Measure-Command -Expression ( 0..250 | ForEach-Object ( $ arrlit += $_+1 ))
$ arrlit _performance
Перша команда виконує операцію над масивом, а третій рядок робить те саме у списку масивів.
Вихід:
- Продуктивність масиву
- Виконання списку масивів
Продуктивність списку масивів швидша та краща, ніж у масиві.
Приклад масиву в PowerShell
Далі наводиться приклад пошуку довжини масиву за допомогою циклу, циклу foreach та циклу while.
Вхід:
$testlist = 5.634, 4.512323, 3.312323, 13.2213213, 4.02324, 34.3334324, 34.04324, 45.4534324, 99.993234324, 11123234234 write-host("Printing the array elements")
$testlist
write-host("length of array")
$testlist.Length
write-host("fifth element in array")
$testlist(4) write-host("partial array")
$subList = $testlist(1..3) write-host("using for loop")
for ($i = 0; $i -le ($testlist.length - 1); $i += 1) (
$testlist($i) )
write-host("using forEach Loop")
foreach ($e in $testlist) (
$e
)
write-host("using while Loop")
$i = 0
while($i -lt 4) (
$testlist($i);
$i++
)
write-host("Assign values")
$testlist(1) = 10
$testlist
Вихід:
Таблиця хешу
Таблиця хеш використовується для реалізації структурованого масиву. У хеш-таблиці значення зберігаються у форматі ключ-значення. Вони також відомі як словник або асоціативний масив.
Синтаксис:
()
Або
( key1=”test1”;key2=”test2”;key3=”test3”)
Там, де key1, key2 та key3 є ключами, а test1, test2 та test3 - це значення.
Вхід :
$testhashtable
Вихід:
Ключ або значення можна отримати наступним чином за допомогою оператора .dot
Вхід:
$testhashtable.keys
Вихід:
Вхід:
$testhashtable.Values
Вихід:
Приклад
Далі наводиться приклад пошуку всіх ключів хешшю та значень хештелю.
Вхід:
$testht = @( English = "85"; Tamil = "100"; maths = "100")
write-host("Printing all the hashtable keys")
$testht.keys
write-host("Printing all the hashtable values")
$testht.values
write-host("print Size")
$testht.Count
write-host("Add key-value")
$testht("Social") = "100"
write-host("Add key-value")
$testht.Add("ss", "110")
write-host("Size")
$testht.Count
write-host("Remove English")
$testht.Remove("English")
write-host("curentSize")
$testht.Count
write-host("sortinh by key")
$testht.GetEnumerator() | Sort-Object -Property key
Вихід:
Висновок - масив в PowerShell
Основна перевага масиву - це управління пам'яттю. До них можна отримати доступ безпосередньо з кеша, що допомагає в швидшому пошуку. Вони підлягають багаторазовому використанню, як тільки це буде оголошено, їх можна повторно використовувати.
Рекомендовані статті
Це посібник з масиву в PowerShell. Тут ми обговорюємо введення та реалізацію масиву, списку масивів та хеш-таблиці в PowerShell. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- PowerShell vs CMD
- Топ-7 версій PowerShell
- Переваги масиву
- Ключова різниця між PowerShell та Bash