SMB protokolüyle diğer bilgisayarlardaki paylaşılan (shared) dosya sistemine erişmek mümkün.
19 Ocak 2021 Salı
13 Ocak 2021 Çarşamba
Powershell String
split metodu ve split operator Farklıdır
- split() metodu verilen tüm girdiyi tek tek karakterler gibi değerlendirir ve ona göre böler. Ayrıca büyük küçük fark farklına duyarlıdır
- split operator ise verilen tüm girdiyi tek bir ayraç olarak algılar. Ayrıca büyük küçük fark farklına duyarlı değildir.
Örnek
Elimizde şöyle bir kod olsun
$Str="This is the<BR />source string<BR />ALL RIGHT"
$Str.Split("<BR />")
This
is
the
(multiple blank lines)
source
string
(multiple blank lines)
ALL
IGHT
$Str -Split("<BR />")
This is the
source string
ALL RIGHT
Açıklaması şöyle
From this you can see that the string.split() method:- performs a case sensitive split (note that "ALL RIGHT" his split on the "R" but "broken" is not split on the "r")- treats the string as a list of possible characters to split onWhile the -split operator:- performs a case-insensitive comparison- only splits on the whole string
split metodu
Örnek
Şöyle yaparız. Split sonucu direkt değişkenlere atanıyor.
$string = 'FirstPart SecondPart'
$a,$b = $string.split(' ')
$a
$b
Örnek
Şöyle yaparız. Burada | ile ayrılmış alanlar split edildikten sonra alanlar tekrar sıralanıp yine | ile birleştiriliyor. Yani aslında sütunların sıralaması değiştiriliyor.
$File = get-content "D:\test\1234.txt"
$OutputFile = foreach($line in $File){($line.split('|'))[0,4,1,2,3,5] -Join '|'}
$OutputFile | out-file -filepath "D:\test\4321.txt" -Encoding "ascii"
Örnek
Şöyle yaparız. Çıktı olarak "1stZAP/SFR" alırız
$MilitaryDude = "Doe, Jane C LTC MMUA DCC 1stZAP/SFR"($MilitaryDude -split "DCC" | Select -First 1).Trim()
12 Ocak 2021 Salı
Powershell Get-Content
Giriş
Dosyanın okunabilirliğini kontrol etmek için önce Test-Path kullanılabilir.
Dosyayı bir Object[] içine okur. Ayraç olarak newline kullanılır. Sonucun string dizisi olduğunu görmek için şöyle yaparız
$object = Get-Content data.txt
$object.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
Şöyle yaparız. Her satırı okur. INSERT INTO ile başlıyorsa ilk ' (single quote) karakterini bulur. ' karakterini escape etmek için 4 defa '''' şeklinde kullanmak gerek.
foreach($line in Get-Content data.sql) {if($line.StartsWith('INSERT INTO')) {$startIndex = $line.IndexOf(''''');if ($startIndex -ne -1) {$endIndex = $line.IndexOf('''',$startIndex + 1)$length = $endIndex - $startIndex + 1Write-Output $line.SubString($startIndex,$length);}}}
Örnek
Bir başka bilgisayardaki dosyayı okumak için şöyle yaparız
Get-Content -Path "\\xx.xxx.xx.xxx\c$\App_configuration.txt"
-Raw seçeneği
Dosyayı tek bir string değişkeni içine okur
Örnek
Şöyle yaparız
$text = Get-Content .\file.txt -Raw
İkinci dosyadaki bir alanı birinci dosyada içeren satırları bulmak için şöyle yaparız
$filename="insert.txt"Remove-Item $filename$file1 = Get-Content -RAW .\file1.txt$file1lines = $file1.Split(';')$file2 = Get-Content -RAW .\file2.txt$file2lines = $file2.Split(';')foreach($file2line in file2lines) {$file2line = $file2line - replace "'n'r",""$file2line = $file2line.Trim()if($file2line.StartsWith('INSERT INTO')) {$startIndex = $file2line.IndexOf(''''');if ($startIndex -ne -1) {$endIndex = $file2line.IndexOf('''',$startIndex + 1)$length = $endIndex - $startIndex + 1$id = $file2line.SubString($startIndex,$length);$file1lines |foreach {if ($_.Contains($id) {$_ | Out-File -Append -FilePath $filename}}}}}
10 Ocak 2021 Pazar
timeBeginPeriod metodu
Giriş
Açıklaması şöyle
ÖrnekThe timeBeginPeriod function requests a minimum resolution for periodic timers.
Şöyle yaparız
int main(){begintimePeriod(1);HANDLE event = CreateEvent(NULL,TRUE,FALSE,NULL);WaitForSingleObject(event,1);}
WaitForSingleObject
Örnek
Şöyle yaparız
HANDLE event = CreateEvent(NULL,TRUE,FALSE,NULL);WaitForSingleObject(event,1);
Kaydol:
Kayıtlar (Atom)