Terinspirasi oleh artikel tersebut
"Kategori bukan direktori, atau sistem file Semantic untuk Linux Vitis",
Saya memutuskan untuk membuat analog saya sendiri tentang utilitas vitis
untuk PowerShell Core.
Mengapa saya mulai melakukan ini?
Pertama, vitis
untuk Linux.
Kedua, saya ingin menggunakan "pipa" di PowerShell.
Karena saya ingin membuat utilitas lintas platform, saya memilih .Net Core.
Latar belakang
Awalnya ada kekacauan. Kemudian folder muncul di disk.
Tapi kekacauan masih berkuasa. Dan tag muncul, serta subtag dan sinonim untuk tag. Tetapi kekacauan juga menangkap mereka. Dan kategori diciptakan.
Konsep
File tidak disimpan dalam hierarki folder, tetapi dalam tumpukan, dengan kategori tertentu. Satu file bisa masuk ke beberapa kategori.
Jika Anda perlu menemukan file, lebih mudah untuk memasukkan kategori yang menjadi miliknya. Jauh lebih mudah diingat daripada di folder apa itu disimpan.
Tetapi sistem file seperti itu sama sekali tidak cocok untuk menyimpan kode, kode sumber, dll.
Ini dirancang untuk menyimpan, misalnya, foto keluarga, musik, dokumen.
Gunakan
Baiklah, mari kita mulai demonstrasi.
Pasang Graphile:
# install.ps1 PS D:\Source\repos\Graphile> .\install.ps1
Pertama, inisialisasi Graphile di folder:
# PS C:\Users\Dell\GraphileTest> Import-Module GraphilePowerShell # Graphile PS C:\Users\Dell\GraphileTest> Init-Graphile C:\Users\Dell\GraphileTest\graphile.db
Jadi, kita semua sudah siap. Sekarang Anda dapat membuat kategori baru:
PS C:\Users\Dell\GraphileTest> New-Category -Name "music" music
Tambahkan file:
PS C:\Users\Dell\GraphileTest> Get-ChildItem "D:\Music\Pink Floyd - The Wall" -Recurse -Filter "*.mp3" | foreach { $_.FullName } | foreach { >> Add-FileToCategory -File $_ -Categories "music" >> }
Bagi mereka yang tidak mengerti apa yang saya lakukan:
- Mendapat daftar file di folder
Pink Floyd - The Wall
- Setiap file dikonversi ke path lengkap ke mereka
- Menambahkan setiap file ke kategori
music
Sekarang periksa apakah kami benar-benar menambahkan file ke kategori:
PS C:\Users\Dell\GraphileTest> List-Graphiles | Format-Table
Daftar akan ditampilkan dalam format:
CategoriesNames Id Categories Name Extension
Tambahkan lebih banyak kategori dan file:
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:\Music\The Alan Parsons Project - Turn of a Friendly Card" -File -Recurse | foreach { $_.FullName } | foreach { Add-FileToCategory -File $_ -Categories "music", "alan-parsons" }
Periksa file:
List-Graphiles -Categories "alan-parsons" | Format-Table
Perintah akan mencantumkan semua file yang termasuk dalam alan-parsons
.
Lebih banyak file ke sistem file dewa!
New-Category -Name "images" Get-ChildItem "D:\" -File -Recurse | foreach { $.FullName } | foreach { Add-FileToCategory -File $_ -Categories "images" }
Kami memeriksa:
List-Graphiles -Categories "images" | Format-Table
Semuanya bekerja!
Tapi ini baru permulaan. Ekspor sistem file reguler Anda ke Graphile dan dapatkan organisasi file yang hebat.
Tempat mengunduh Graphile
Berikut ini tautan ke GitLab Graphile.
MIT
, sehingga Anda dapat menggunakannya bahkan untuk tujuan komersial.
Proyek masa depan
Karena ini adalah PowerShell, bukan khukh-mukhra, Anda dapat membuat shell grafis di bawah .NET Core.
Bagaimana cara melakukannya:
- Instal Microsoft.PowerShell.SDK
- Gunakan kelas PowerShell dan panggil Graphile.
Jika Anda menyukai proyek ini, buat komitmen, merge request
dan buat diskusi.
Terima kasih sudah membaca! Gunakan dan nikmati!