پاورشل برای برنامهنویسان
@programming_tipsدرسنامه: انواع داده در PowerShell
در PowerShell انواع دادهها متنوع هستند و هر کدام کاربرد خاص خود را دارند. PowerShell بیشتر به صورت پویا نوع داده را تشخیص میدهد، اما شما میتوانید نوع داده را صریحاً مشخص کنید.
۱. String (رشته متنی)
رشتهها برای ذخیره متن به کار میروند و با علامت کوتیشن دوتایی " " یا تک ' ' تعریف میشوند.
مثالها:
$name = "Ali" $message = 'Hello, PowerShell!'
ویژگیها:
- میتوانید با
+رشتهها را به هم بچسبانید. - میتوانید متغیرها را داخل رشته دوتایی
" "استفاده کنید، ولی در رشته تک' 'متغیرها تفسیر نمیشوند.
مثال:
$firstName = "Ali" $greeting = "Hello, $firstName!" # خروجی: Hello, Ali!
۲. Int (عدد صحیح)
اعداد صحیح برای محاسبات عددی استفاده میشوند و میتوانند با عملگرهای ریاضی مثل +, -, *, / و % کار کنند.
مثالها:
$age = 27 $year = 2025 $sum = $age + $year # خروجی: 2052
۳. Bool (مقدار منطقی)
بولین یا بولی دو مقدار ممکن دارد: $true یا $false. برای شرایط شرطی و کنترل جریان برنامه استفاده میشود.
مثالها:
$isStudent = $true
$isAdmin = $false
if ($isStudent) {
Write-Output "The user is a student"
}
۴. Array (آرایه)
آرایهها برای ذخیره مجموعهای از دادهها استفاده میشوند. آرایه میتواند شامل دادههای هم نوع یا متفاوت باشد.
مثالها:
# آرایه از اعداد
$numbers = @(1, 2, 3, 4, 5)
# آرایه از رشتهها
$names = @("Ali", "Sara", "Reza")
# آرایه مختلط
$mixed = @(1, "Ali", $true)
دسترسی به عناصر آرایه:
$names[0] # خروجی: Ali $numbers[2] = 10 # تغییر مقدار عنصر سوم به 10
۵. Hashtable (جدول هش)
از Hashtable برای ذخیره دادهها به صورت جفت کلید و مقدار (Key-Value) استفاده میشود. این دادهها مثل دیکشنری در Python عمل میکنند.
مثالها:
$person = @{
Name = "Ali"
Age = 27
IsStudent = $true
}
# دسترسی به مقادیر
$person["Name"] # خروجی: Ali
$person["Age"] # خروجی: 27
$person["IsStudent"] # خروجی: True
۶. Object (شی)
شی یا Object، دادهای پیچیده است که میتواند شامل ویژگیها و متدها باشد. در PowerShell بسیاری از دستورات خروجی خود را به صورت Object برمیگردانند. این Objects میتوانند Properties و Methods داشته باشند.
مثالها:
# ایجاد یک شیء ساده $person = New-Object PSObject $person | Add-Member -MemberType NoteProperty -Name Name -Value "Ali" $person | Add-Member -MemberType NoteProperty -Name Age -Value 27 # دسترسی به ویژگیها $person.Name # خروجی: Ali $person.Age # خروجی: 27
همچنین بسیاری از خروجی Cmdletها به صورت Object هستند و میتوان با Get-Member ویژگیها و متدهای آنها را بررسی کرد:
Get-Process | Get-Member
۷. نکات مهم
- پاورشل به صورت پویا نوع داده را تشخیص میدهد، بنابراین لازم نیست همیشه نوع را صریحاً مشخص کنید.
- برای عملیات ریاضی از اعداد استفاده کنید، برای متن از رشته و برای ذخیره دادههای کلید-مقدار از Hashtable.
- آرایهها و Objects ابزارهای قدرتمندی برای پردازش دادههای پیچیده و ترکیبی هستند.
- بسیاری از دستورات PowerShell با Object کار میکنند، پس تسلط بر آنها برای استفاده از Pipeline ضروری است.
۸. تمرین برای شما
- یک آرایه از اعداد بسازید و مجموع آنها را محاسبه کنید.
- یک Hashtable برای یک شخص ایجاد کنید شامل Name، Age و IsStudent و مقادیر آن را چاپ کنید.
- یک Object ساده بسازید و چند ویژگی به آن اضافه کنید، سپس با استفاده از آن ویژگیها را چاپ کنید.
- یک رشته بسازید که شامل نام خودتان باشد و در متن از یک متغیر دیگر استفاده کنید.
🔑 خلاصهی درسنامه:
String: رشته متنی برای ذخیره متن.Int: عدد صحیح برای محاسبات عددی.Bool: مقدار منطقی$trueیا$false.Array: مجموعهای از دادهها که میتواند ترکیبی باشد.Hashtable: دادهها به صورت جفت کلید و مقدار.Object: داده پیچیده با ویژگیها و متدها، خروجی بسیاری از Cmdletها به صورت Object است.