I frymëzuar
"Kategoritë në vend të drejtorive, ose një sistem skedarësh semantikë për Linux Vitis»,
Vendosa të bëj analogun tim të shërbimeve vitis për PowerShell Core.
Pse fillova ta bëj këtë
Së pari, vitis vetëm për Linux.
Së dyti, unë dua të përdor "tuba" në PowerShell.
Meqenëse doja të bëja një program ndër-platformë, zgjodha .Net Core.
parahistorinë
Në fillim kishte kaos. Pastaj dosjet u shfaqën në disk.
Por kaosi ende mbretëronte. Dhe u shfaqën etiketat, si dhe nën-etiketat dhe sinonimet e etiketave. Por kaosi i kapi edhe ata. Dhe kategoritë u shpikën.
koncept
Skedarët nuk ruhen në një hierarki dosjesh, por në një "grumbull", me kategori specifike. Një skedar mund t'i përkasë disa kategorive.
Nëse keni nevojë të gjeni një skedar, është më e përshtatshme të futni kategoritë të cilave u përket. Kjo është shumë më e lehtë për t'u mbajtur mend sesa në cilat dosje ruhet.
Por një sistem i tillë skedarësh nuk është aspak i përshtatshëm për ruajtjen e kodit, burimeve, etj.
Është projektuar për të ruajtur, për shembull, foto familjare, muzikë, dokumente.
Përdorim
Epo, le të fillojmë me demonstrimin.
Instaloni Graphile:
# install.ps1 находится в корневой папке с кодом
PS D:SourcereposGraphile> .install.ps1Së pari ne inicializojmë Graphile në dosje:
# Импортируем установленный модуль
PS C:UsersDellGraphileTest> Import-Module GraphilePowerShell
# Инициализируем Graphile в папке
PS C:UsersDellGraphileTest> Init-Graphile
C:UsersDellGraphileTestgraphile.dbPra, ne kemi gjithçka të vendosur. Tani mund të krijoni një kategori të re:
PS C:UsersDellGraphileTest> New-Category -Name "music"
musicLe të shtojmë skedarë:
PS C:UsersDellGraphileTest> Get-ChildItem "D:MusicPink Floyd - The Wall" -Recurse -Filter "*.mp3" | foreach { $_.FullName } | foreach {
>> Add-FileToCategory -File $_ -Categories "music"
>> }Për ata që nuk e kuptojnë se çfarë bëra:
- Mori një listë skedarësh në një dosje
Pink Floyd - The Wall - Çdo skedar u konvertua në rrugën e tij të plotë
- U shtua çdo skedar në kategori
music
Tani le të kontrollojmë nëse kemi shtuar vërtet skedarë në kategori:
PS C:UsersDellGraphileTest> List-Graphiles | Format-TableNjë listë do të shfaqet në formatin:
CategoriesNames Id Categories Name ExtensionLe të shtojmë më shumë kategori dhe skedarë:
New-Category -Name "the-wall"
New-Category -Name "alan-parsons"
List-Graphiles -Categories "music" | foreach { Add-GraphileToCategory -Categories "the-wall" -Files $_.Name }
Get-ChildItem "D:MusicThe Alan Parsons Project - Turn of a Friendly Card" -File -Recurse | foreach { $_.FullName } | foreach { Add-FileToCategory -File $_ -Categories "music", "alan-parsons" }Le të kontrollojmë skedarët:
List-Graphiles -Categories "alan-parsons" | Format-TableKomanda do të listojë të gjithë skedarët që i përkasin kategorisë alan-parsons.
Më shumë skedarë për perëndinë e sistemeve të skedarëve!
New-Category -Name "images"
Get-ChildItem "D:Изображения" -File -Recurse | foreach { $.FullName } | foreach {
Add-FileToCategory -File $_ -Categories "images"
}kontrolloni:
List-Graphiles -Categories "images" | Format-TableGjithçka po funksionon!
Por ky është vetëm fillimi. Eksportoni sistemin tuaj të zakonshëm të skedarëve në Graphile dhe merrni një organizim të shkëlqyeshëm të skedarëve.
Ku mund të shkarkoni Graphile
Këtu në GitLab Graphile.
leje MIT, kështu që mund ta përdorni edhe për qëllime komerciale.
E ardhmja e projektit
Meqenëse ky është PowerShell, dhe jo gjëra të çmendura, mund të bëni një guaskë grafike për .NET Core.
Si të bëhet kjo:
- Instaloni Microsoft.PowerShell.SDK
- Përdorni klasën PowerShell dhe telefononi Graphile.
Nëse ju pëlqen projekti, bëni zotime, merge request's dhe krijoni diskutime.
Faleminderit per leximin! Përdoreni dhe kënaquni!
Burimi: www.habr.com
