Türkçe yerel ayarları olan bir bilgisayarda Powershell kullanırken ondalık sayıları yazarken ondalık ayraç nokta "." ama ekrana bastırırken virgüldür ","
$veri = 1222333.456789 # ondalık sayı
"{0:f}" -f $veri # 1222333,57
"{0:f3}" -f $veri # 1222333,568
"{0:e}" -f $veri # 1,222334e+006
"{0:E}" -f $veri # 1,222334E+006
"{0:n}" -f $veri # 1.222.333,57
$veri = 1299.99 # para birimi
"{0:c}" -f $veri # ₺1.299,99
$veri = 1234 # tamsayı
"{0:n}" -f $veri # 1.234,00
"{0:d8}" -f $veri # 00001234 (sola sıfır ekler)
"{0,8:n0}" -f $veri # ___1.234 (sayıdan önce 3 boşluk olur)
$veri = 255 # 16'lık düzen
"{0:x}" -f $veri # ff
"{0:X4}" -f $veri # 00FF
#veri = 0.25 # yüzde
"{0:p}" -f $veri # %25,00
"{0:p1}" -f $veri # %25,0
"{0:p0}" -f $veri # %25
# veri = Get-Date # tarih
"{0:d}" -f $veri # 17.08.2023
"{0:D}" -f $veri # 17 Ağustos 2023 Perşembe
"{0:f}" -f $veri # 17 Ağustos 2023 Perşembe 15:17
"{0:F}" -f $veri # 17 Ağustos 2023 Perşembe 15:17:41
"{0:g}" -f $veri # 17.08.2023 15:17
"{0:g}" -f $veri # 17.08.2023 15:17:42
"{0:r}" -f $veri # Thu, 17 Aug 2023 15:17:41 GMT
"{0:o}" -f $veri # 2023-08-17T15:17:41.0556971+03:00
"{0:yy-MM-dd}" -f $veri # 23-08-17
Burada
d: kısa tarih
D: uzun tarih
f: uzun tarih, kısa saat
F: uzun tarih, uzun saat
t: kısa saat
T: uzun saat
g: kısa genel tarih biçimi
G: uzun genel tarih biçimi
yy: yılın son 2 hanesi (23 gibi)
yyyy: tam yıl biçimi (2023 gibi)
M: İçinde bulunulan ay, mümkünse tek haneli sayı
MM: İçinde bulunulan ay, çift haneli (tek ise önüne sıfır ekler)
MMM: İçinde bulunulan ay, 3 karakterli kısaltma
MMMM: İçinde bulunulan ay, tam adı
d : Ayın günü, tek haneli
dd: Ayın günü, çift haneli
hh: Saat, 12 saatlik düzende
HH: Saat, 24 saatlik düzende
mm: Dakika
ss: Saniye
PS> Get-Date -Format "yyyy-MM-dd HH:mm:ss"
2023-08-17 15:17:41
Get-Date'in bir de -UFormat parametresi var:Get-Date -UFormat %V # yılın haftasını verir (1-52)
10'luk düzende bir sayıyı 16'lık düzende görmek için yukarıdaki gibi
PS> "{0:x}" -f 252 # fc
kullanılabilir. Ama daha genel olarak bir sayıyı herhangi bir düzende yazmak için
PS> [Convert]::ToString(252,2)11111100
kullanılabilir.
16'lık düzendeki bir sayıyı girmek için başına 0x koymak yeterli:
0xfc # onluk düzende 252'ye karşılık gelir
Veya ikilik düzendeki bir sayıyı girmek için başına 0b koymak gerek:
0b11111100 # bu da 252
Veya şu şekilde dönüştürmek de işimize yarayabilir:
[Convert]::ToInt32("11111100",2)
252
Bir dosyanın içeriğini hex olarak görmek için
PS> $icerik = cat '.\file.txt' -Encoding Byte -Raw
PS> [System.BitConverter]::ToString($icerik).Replace("-","")
Daha kolay bir yol, belki, Format-Hex kullanmak:
PS> Format-Hex -Path '.\file.txt'
Tek satırda/cümlede birden fazla veri biçimlendirme:
PS> $veri1=1199; $veri2=5231; $veri3=3199.99
PS> "ilk sayımız {0:d8}, sonraki {1:e2} ve nihayet {2:f4}" -f $veri1, $veri2, $veri3
ilk sayımız 00001199, sonrajş 5,23e+003, ve nihayet 3199,9900
Şu sayfadan güzel birkaç örnek:
PS> "|{0,-10}| |{1,10}|" -f "hello", "world"
|hello || world|
PS> "{0:###-##-##}" -f 1234567
123-45-67
Sonuna 3 haneli tamsayılar eklenmiş Name001, Name002,... gibi 100 isim üretmek:
PS> 1..100 | % { 'Name{0:d3}' -f $_ }
Bir karakterin 16'lık düzendeki karşılığı
PS> '0x' + "{0:x}" -f [int][char]'A'
0x41
Hiç yorum yok:
Yorum Gönder