Nëse po përpiqeni të fshini një artikull të veçantë pavarësisht nga lloji i skedarit, fillimisht duhet të kontrolloni nëse ai ekziston apo jo. Përndryshe, ka të ngjarë të hasni në një gabim të papritur.
Megjithëse kontrollimi dhe heqja e skedarëve është relativisht e lehtë duke përdorur GUI-në e Windows, ju duhet të lundroni në disa dritare vetëm për të fshirë një skedar të vetëm. Nga ana tjetër, Powershell ju lejon të bëni të njëjtën detyrë duke përdorur komanda të thjeshta dhe të shkurtra.
Epo, thjesht mund të përdorni cmdlet Remove-Item për të fshirë një skedar specifik nga skedari. rrugën e dhënë. Megjithatë, ka komanda të shumta dhe një mori metodash për të kontrolluar nëse artikulli që po përpiqeni të fshini ekziston apo jo.
Për të njëjtën gjë, ky artikull do t’ju udhëzojë me komandat e ndryshme dhe teknikat e dobishme për të. kontrolloni dhe fshini skedarët ekzistues në Windows Powershell.
Si të kontrolloni dhe fshini një skedar ekzistues në Powershell?
Windows Powershell është një terminal që i lejon përdoruesit të automatizojnë detyrat duke përdorur gjuhë skriptimi. Kështu, krijimi, leximi, përditësimi ose fshirja e skedarëve duke përdorur këtë mjet është e lehtë për t’u kuptuar dhe zbatuar.
Me siguri, keni provuar të kontrolloni nëse ekziston një skedar në Bash, Command Prompt dhe Windows GUI. Tani, në këtë seksion, do të mësoni komanda të ndryshme për ta bërë atë në Powershell dhe do ta fshini nëse kërkohet.
Përdorimi i Test-Path
Test-Path është një komandë që përcakton nëse rruga/adresa e dhënë ekziston. Në thelb, ekzekutimi i këtij cmdlet në Powershell nxjerr një shprehje boolean. Këtu, E vërtetë tregon se skedari në të cilin po përpiqeni të përdorni ekziston dhe False do të thotë se nuk ekziston. Më poshtë është sintaksa për Test-Path:
Test-Path
Për shembull, për të kontrolluar nëse skedari”text.txt”ekziston brenda drejtorisë së Dokumenteve dhe për ta fshirë atë, ja çfarë ju mund të bëni:
Në dritaren e Powershell, kopjoni dhe ngjisni komandën e mëposhtme:
Dokumentet e rrugës së testimit\text.txtTani, shtypni enter dhe duhet të merrni vlerën’E vërtetë’nëse ekziston.


Përndryshe, do të merrni vlerën’E rreme’si më poshtë.
Nëse ekziston, tani mund të përdorni komandën e mëposhtme për të fshirë skedarin:
Remove-Item Documents\text.txt

Megjithatë, nëse provoni të fshini skedarin që nuk nuk ekziston, do të marrësh një mesazh gabimi si ai më poshtë.
Nëse nuk preferoni shprehjet boolean, mund të përdorni deklaratat if dhe else për të gjeneruar mesazhe aktuale. Gjithashtu, shkrimi i këtij kodi të thjeshtë do t’ju ndihmojë të fshini skedarin ekzistues pa pasur nevojë të ekzekutoni komanda të shumta:
$MyFile=”Documents\text.txt”
if (Test-Path $MyFile) {
Remove-Artikulli $MyFile
Write-Host”Skedari u gjet dhe u fshi me sukses.”
}
tjetër
{
Write-Host”Skedari që po kërkoni nuk”ekziston.”
}
Në kodin e mësipërm, ne në thelb përfaqësojmë vendndodhjen me variablin MyFile. Tani, if (Test-Path $MyFile) përcakton nëse shtegu ekziston apo jo.

Për ta siguruar këtë, mund të përdorni përsëri Dokumentet e Rrugës së Testit\text.txt dhe duhet të merrni daljen False.
Përdorimi Get-Item
Përdorimi i Get-Item është po aq i thjeshtë sa përdorimi i Test-Path. Sidoqoftë, ky cmdlet nuk përcakton nëse një skedar ekziston duke përdorur shprehje boolean. Në vend të kësaj, ai nxjerr modalitetin e skedarit tuaj, kohën e fundit të shkrimit, gjatësinë dhe emrin, së bashku me llojin e tij. Më poshtë jepet sintaksa e Get-Item:
Get-Item
Ju lutemi ndiqni udhëzimet e mëposhtme për të mësuar se si të identifikoni dhe fshini një skedar ekzistues duke përdorur cmdlet Get-Item. Për qëllime demonstrimi, ne do të heqim një skedar imazhi”image.bmp”nga direktoria e Dokumenteve:
Pas nisjes së Powershell, ngjitni komandën e mëposhtme:
Get-Item Documents\image.bmpHitni Enter dhe do të merrni detajet e skedarit nëse skedari ekziston.

Ndryshe , do të hasni gabimin”Nuk mund të gjendet shtegu”.
Nëse skedari ekziston, tani përdorni komandën e mëposhtme për ta hequr atë nga drejtoria:
Remove-Item Documents\image.bmp

Por nëse skedari nuk ekziston dhe provoni ta fshini, do të hasni përsëri gabimin Nuk mund ta gjej shtegun.
Epo, mund të përdorni gjithashtu programin e mëposhtëm për të kontrolluar dhe fshirë një skedar ekzistues në Powershell duke përdorur Get-Item:
$MyFile=”Documents\image.bmp”if(Get-Item $MyFile-ErrorAction Ignore) { Remove-Item $MyFile Write-Host”Skedari u gjet dhe u fshi me sukses.”} else { Write-Host”Skedari që po kërkoni nuk ekziston dhe nuk mund të fshihet.”}
Në skriptin e mësipërm, ne fillimisht kemi caktuar një variabël MyFile që ruan shtegun e i skedari magjistar.bmp. Më pas, ne vendosim kushtin if si Get-Item $MyFile-ErrorAction Ignore, ku Get-Item $MyFile merr artikullin nga vendndodhja dhe –ErrorAction Ignore do ta fshijë gabimin nëse skedari nuk ekziston.

Përndryshe, do të hasni”Skedari që po kërkoni nuk ekziston dhe nuk mund të fshihet.”
Shënim: Ju gjithashtu mund të përdorni cmdlet Get-ChildItem në vend të Get-Item. Të dyja komandat funksionojnë saktësisht njësoj.
Përdorimi i [System.IO.File]::Exists
System.IO merret me leximin dhe shkrimin në skedarët në biblioteka e klasës kornizë.NET. Duke përdorur hapësirën e emrave, ne mundemi shpejt përcaktoni nëse ekziston një skedar. Pastaj, duke përdorur cmdlet Remove-Item, fshirja është gjithashtu e mundur.
Ashtu si Test-Path, komanda [System.IO.File]::Exists hedh gjithashtu një shprehje boolean për të përcaktuar nëse një skedar ekziston apo jo. Këtu është sintaksa e [System.IO.File]::Exists cmdlet:
[System.IO.File]::Exists(“
Për demonstrim, le të kontrollojmë nëse një skedar MS Word’word.docx’ekziston në drejtorinë e Dokumentit dhe fshini këtë artikull:
Ekzekutoni cmdlet-in e mëposhtëm në dritaren e Powershell:
[System.IO.File]::Exists(“Documents\word.docx”) Tani, Powershell kthen”E vërtetë”nëse skedari ekziston.

Përndryshe, dalja është e gabuar.
Nëse skedari që po kërkoni ekziston, përdorni bashkërendimin e mëposhtëm mmdhe për ta fshirë:
Hiq dokumentet e artikullit\word.docx

Epo, Powershell shkakton gabimin Nuk mund të gjendet rruga nëse provoni të fshini një skedar që nuk ekziston.
Për më tepër, mund të provoni programin e mëposhtëm që miraton [System.IO.File]::Exists cmdlet për të fshirë një skedar ekzistues në Windows Powershell:
$MyFile=”Documents\word.docx”if([System.IO.File]::Exists($MyFile)) { Remove-Item $MyFile Write-Host”T ai skedar u gjet dhe u fshi me sukses”} else { Write-Host”Skedari që po kërkoni nuk ekziston dhe nuk mund të fshihet.”}
Në programin e mësipërm, MyFile është një variabël që ruan shtegun e skedarit MS Word. Tani, duke përdorur [System.IO.File]::Exists($MyFile), ne mësojmë nëse artikulli ekziston apo jo.

Në mënyrë të ngjashme, ju merrni mesazhin,”Skedari që jeni kërkimi për nuk ekziston dhe nuk mund të fshihet.”nëse shtegu nuk është caktuar si duhet.
Si të fshijmë shumë skedarë ekzistues në Powershell?
Ndonjëherë? , mund të dëshironi të fshini skedarë të shumtë nga një dosje ose drejtori. Në një rast të tillë, Windows Powershell ofron një veçori për të hequr të gjithë ose skedarët e zgjedhur përgjithmonë.
Kujdes: Artikujt. nuk do të zhvendoset në koshin e riciklimit.Në thelb, veprimi është i barabartë ivalent për kryerjen e fshirjes së përhershme duke përdorur tastet Shift + Delete në ndërfaqen e Windows.
Në këtë seksion, ne do të diskutojmë disa mënyra të thjeshta dhe efektive për të kontrolluar dhe fshirë shumë skedarë ekzistues në programin Powershell.
>
Të gjithë skedarët nga një dosje specifike
Nëse dëshironi të fshini të gjithë skedarët nga një dosje e caktuar, pavarësisht nga lloji ose shtrirja e skedarit, këtu është komanda e duhur që mund të përdorni:
Hiq-Artikulli
Për shembull, le të kontrollojmë skedarët brenda dosjes Shembull dhe të fshijmë të gjithë skedarët brenda saj. Ja se si mund ta bëni:
Së pari, përdorni komandën e mëposhtme për të kontrolluar skedarët brenda dosjes Shembull:
Get-ChildItem C:\Users\Bhishu\Desktop\Example
Tani, mund të ekzekutoni kodin e mëposhtëm për të fshirë të gjithë këta skedarë:
Hiq artikullin C:\Users\Bhishu\Desktop\Example\*.*
Për të konfirmuar që të gjithë skedarët tuaj janë hequr, përdorni përsëri cmdlet Get-ChildItem, i cili nuk duhet të shfaqë asgjë.
Skedarët e fshehur ose vetëm për lexim

Prandaj, ju duhet të përdorni-Force parametër për t’i fshirë ato me forcë:
Remove-Item
Tani, ju nuk duhet të merrni gabimin. Në fakt, ju mund ta vërtetoni këtë duke përdorur komandën Test-Path për të kontrolluar nëse skedari i fshehur ekziston tani në të njëjtin vend.
Të gjithë skedarët e të njëjtit lloj
Nëse e bëni këtë. nuk doni të fshini të gjithë skedarët nga një dosje specifike, por dëshironi të hiqni vetëm ato artikuj që kanë të njëjtin lloj skedari, këtu është sintaksa që po kërkoni:
Remove-Item
Për shembull, për të fshirë të gjithë skedarët që kanë shtrirjen.docx nga dosja Shembull, ju lutemi ndiqni hapat e mëposhtëm:
Fillimisht, ekzekutoni skriptin e mëposhtëm për të kontrolluar se çfarë skedarësh ekzistojnë në dosje:
Get-Item C:\Users\bishu\Desktop\Example\*.*

Këtu, *.* do të shfaqë të gjithë skedarët pavarësisht nga shtrirja e tyre. Meqenëse jeni vetëm tr për të hequr skedarët që kanë të njëjtin lloj, përdorni komandën e mëposhtme që duhet të bëjë punën:
Remove-Item C:\Users\bishu\Desktop\Example\*.docx
Në thelb, *.docx do të ndihmojë fshini të gjithë ata skedarë me shtesën.docx. Në mënyrë të ngjashme, mund ta zëvendësoni atë me çdo lloj skedari (.bmp,.txt,.jpeg), i cili do të fshijë vetëm ata skedarë me shtrirjen përkatëse. Më në fund, mund të përdorni përsëri komandën Get-Item për të parë të gjithë skedarët në Shembull dosje. Në të vërtetë, do të vini re se të gjithë skedarët.docx hiqen.