Windows 10'da Masaüstünüzü Düzenlemek için Linux betikleri nasıl kullanılır



Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin

Bu parçanın başlığını ilk okuduğunuzda, bir şeyin teknik olarak yanlış olduğunu düşündüğünüz için affedilebilirsiniz. Sonuçta Linux, Windows işletim sisteminin bir parçası değil mi? Tamamen farklı iki işletim sistemidir. Önceden, Windows ile Linux komut dosyası kullanmanın tek yolu, geçmişte Cygwin . veya çift önyüklemeli bir Linux sistemi kullanın veya benzeri bir şey yükleyin Samba .



Windows 10'da tüm bunlar değişti! Microsoft Windows Mağazası'nda çeşitli Linux dağıtımları mevcuttur. Bu önceki Kali Linux hakkında Appuals makalesi Windows 10 ortamınızda belirli bir Linux dağıtımını elde etmenin böyle bir yöntemini açıklar.



Windows makinenizde Linux komut dosyalarını kullanmanın avantajlarından biri, görevleri otomatikleştirmek için güçlü Linux komut dosyası dilini kullanabilmenizdir, özellikle de Linux komut dosyası oluşturma konusunda Powershell veya Dos toplu dosyalarından daha aşina iseniz. Bu makale, tipik bir Windows Masaüstünü temizlemek için bir Linux 'bash' komut dosyasının nasıl yazılacağını açıklar. Linux'ta yeniyseniz, bu makaleden temel bilgileri öğrenecek ve bu süreçte faydalı bir yardımcı program oluşturacaksınız.



Bash, k ssh, git, apt ve diğer birçok Linux komutunu kullanmanıza izin veren temel bir Ubuntu Linux Terminali (Windows 10 makinelerinde Windows Mağazasında mevcuttur) kullanacağız. Henüz yapmadıysanız, bunun yüklenmesi gerekecektir. Yöntem açıklandı buraya .

Linux Komut Satırı

Ubuntu'yu kurup çalıştırdıktan sonra, aşağıdakine benzer bir komut satırı penceresi göreceksiniz. Bu size bir bash Linux, komut satırı verecektir:



Şimdi senaryomuzu yazacağız. Dosyayı, kullanmaktan eminseniz, not defteri gibi bir Windows düzenleyicisi veya vi gibi bir Linux düzenleyicisi dahil olmak üzere herhangi bir düzenleyiciyle düzenleyebilirsiniz.

Ubuntu terminalini açtığınızda, konumunuz Ubuntu çalışma alanında ana dizininiz olacaktır. Bu, komut istemine komutu girerek belirlenebilir:

echo $ HOME

ve aşağıdaki ekran görüntüsünde gösterildiği gibi ana dizininizi çıkaracaktır. Linux biçimi, '/' gibi dizinleri temsil eden eğik çizgi kullanır.

Kolaylık sağlamak için, komut dosyasını ana dizine yerleştireceğiz.

Sonraki adım, Linux yolu olarak bilindiği için masaüstünüzün konumunu bulmaktır. Doğru dizindeki dosyalar üzerinde işlem yapabilmek için buna ihtiyacımız olacak.

Terminal tipinde 'cd /'. Bu sizi Ubuntu ortamınızın kök alanına götürür.

Sonra 'ls' yazın

Bu, Linux'taki tüm dizinleri listeler. Linux terminalinde buna benzer bir şey göreceksiniz:

Kullanıcı masaüstünüzü bulmamız gerekiyor. Bunun C sürücüsünde olduğunu varsayarak, 'mnt' dizinine geçin. Windows sürücülerinin şu şekilde tanımlanacağı yer burasıdır:

Daha sonra masaüstünüzün hangi dizinde bulunduğunu bilmeniz gerekir. Bunu genellikle Windows'ta, Dosya Gezgini'ndeki 'Hızlı erişim' listesinden olduğu gibi masaüstü simgesine 'sağ tıklayarak' bulabilirsiniz. Masaüstü dizini konumunuz gösterilecek:

Buradan, terminalde Linux kullanarak dizininize geçebilirsiniz:

Bu nedenle, bu örnekte, Windows'taki ters eğik çizgilerin Linux'taki eğik çizgilere eşdeğer olduğunu hatırlayarak, terminale yazarsınız. Benim durumumda, 'dizini değiştir' komutunda gereken yol şudur:

cd / mnt / c / Kullanıcılar / gofor / OneDrive / Masaüstü

Daha sonra masaüstünüzdeki tüm dosyaları 'ls' kullanarak listeleyebilirsiniz:

Masaüstüm gibi bir şeyse, aşağıdaki gibi uzun bir dosya listesi alırsınız:

Masaüstümün Windows'ta ne kadar dağınık göründüğünü buradan görebilirsiniz:

Diğer 2 monitörümde daha fazla simge vardı, bu yüzden bu dosyaları sınıflandırmamız ve düzenlememiz gerekiyor! Sağlanan komut dosyası her dosya türünü alacak ve bunları masaüstünde uygun şekilde adlandırılmış bir klasöre yerleştirecektir.

Dolayısıyla, örneğin kısayol dosyaları, bunlar * .lnk dosyaları olacak, bu yüzden onları 'KISAYOLLAR' adlı bir klasöre taşıyacağız.
Benzer şekilde, .jpg, .png, .bmp, .svg gibi resim dosyaları, 'GÖRÜNTÜLER' adlı bir klasöre taşınacaktır.
Word dosyaları, yani .docx, .pdf, .xls gibi belgeler ve Office dokümanları “OFFICEDOCS” adlı bir klasöre yerleştirilecektir.

Böylece, komut dosyası çalıştırıldığında, tüm belgeler organize bir şekilde, o dosya kategorisi için oluşturulan ilgili dizinde mevcut olacaktır. Bu, masaüstünün dağınıklığını giderecek ve masaüstü dosyalarınızı daha düzenli hale getirecektir. İstediğiniz kadar klasör türü oluşturabilir ve dosya kriterlerini tanımlayabilirsiniz. Dosyaların sadece dosya türüne göre düzenlenmesine gerek yoktur, 'HRFILES' ve 'PROJECTFILES' gibi kategori klasörlerini dilediğiniz gibi oluşturabilirsiniz. Bu örnekte, dosyaları dosya türlerine göre organize edeceğiz.

Kategori ve Dosya Listesi Oluşturma

Bu uygulamayı kullanmak için 2 dosyaya ihtiyacımız olacak:

A) Virgülle ayrılmış CSV dosyasında tutulan bu kategorilere girilecek kategorilerin ve dosya türlerinin listesi. Her kategori adı, dosyaların masaüstüne yerleştirileceği dizinin adı olacaktır. CSV dosyasını tercih ettiğiniz herhangi bir düzenleyiciyle oluşturabilirsiniz. Bu örnekte not defteri kullanacağız.
B) Kategori dosyasını okuyacak ve gerekli tidy işlevini işleyecek bir Linux betiği.

Terminal tipinde mevcut dizinde bir dosya oluşturmak için:

notepad cleanup.csv

Dosya bu aşamada mevcut olmayacağından, yeni bir dosya oluşturmanızı isteyecektir, bu yüzden 'Evet' e basmanız yeterlidir.

Şimdi her kategori için 1 satır 'kategori, dosya türü1, dosya türü2, dosya türü3,…, vb' biçiminde aşağıdaki ayrıntıları gireceğiz, böylece:

SHORTCUTS, lnk 
GÖRÜNTÜLER, jpg, png, svg
BELGELER, txt, docx, doc, pdf

İlk alan, kalan dosya türlerinin yerleştirileceği masaüstündeki dizinin adı olacaktır. Kalan alanlar, klasöre taşımak istediğiniz dosya türleridir.

Bu nedenle, SHORTCUTS klasörü için tüm * .lnk dosyaları bu klasöre taşınacaktır. IMAGES klasörü için, * .jpg, *. Png ve * .svg içeren tüm dosyalar IMAGES klasörüne taşınacaktır. Son olarak tüm * .txt, *. Docx, *. Doc ve * .pdf dosyalarını DOCUMENTS klasörüne taşıyoruz. Bu şekilde dosyaları doğru dizinler halinde düzenliyoruz.

CSV dosyasını oluşturduktan sonra, komut dosyasını yazmaya hazırız. Script'i cleanup.sh olarak adlandıracağız. Bu arada, bu komut dosyasının minimum doğrulaması olacaktır, bu nedenle CSV dosyasının doğru formatta olduğundan emin olmalısınız, yoksa çalışmayacaktır! Bu komut dosyasında yapacağımız tek şey, minimum bir kontrol olarak dosya ve klasörlerin var olup olmadığını kontrol etmektir.

Vi gibi Unix tipi editörleri biliyorsanız, komut dosyasını terminalde düzenleyebilir veya sadece not defteri kullanabilirsiniz:

not defteri cleanup.sh

Komut dosyasının eylemi, komut dosyasında okuduğumuz CSV dosyasının adını ve temizlemek istediğimiz masaüstünün konumunu belirlemektir. Değişkenleri temizleme CSV dosyasına ve masaüstü konumuna ayarlayacağız. Benim durumumda bu aşağıdaki gibidir. Kendiniz için masaüstü konumunu değiştirmeniz gerekecektir. Lütfen, '' arasındaki her şeyin, özel bilgilerinizi girmeniz gereken bir yer tutucu olduğunu unutmayın.

Yani. komut dosyasındaki ilk 2 satır:

MASAÜSTÜ = / mnt / c / Kullanıcılar // Masaüstü 
CSV = cleanup.csv

Tam komut dosyası aşağıda görülebilir. Komutları anlamak istiyorsanız lütfen yorumları okuyun ve bir komuttan emin değilseniz, komutun nasıl çalıştığına dair daha fazla fikir edinmek için Linux komut satırında 'man' deneyin.

Temizleme komut dosyasını çalıştırılabilir hale getirin ve çalıştırın

Komut dosyasını home komut satırından çalıştırmak için, aşağıdaki komutla çalıştırılabilir hale getirmeniz gerekir:

chmod + x cleanup.sh

Komut dosyasını çalıştırmak için, geçerli dizinde olduğu gibi aşağıdakileri yazmanız gerekecektir.

./cleanup.sh

İşte masaüstüm komut dosyası çalıştırılmadan önce ve sonra nasıl görünüyordu. Taşınan dosyaları içeren klasörlerin artık oluşturulduğunu ve masaüstünün çok daha az dağınık olduğunu görebilirsiniz:

Önce: Sonra:

ve tüm kısayolların masaüstünden taşınmış olduğu SHORTCUTS dizini.

Windows için Full Desktop Tidy Linux Script

Lütfen komut dosyasının nasıl çalıştığını açıkladıkları için komut dosyasında '#' ile başlayan açıklamaları not edin. # Yerel masaüstünün veya temizlemek istediğiniz herhangi bir dizinin konumu için değişkenleri ve CSV dosyasının adını ayarlayın.

MASAÜSTÜ = / mnt / c / Kullanıcılar / gofor / OneDrive / Masaüstü 
CSV = cleanup.csv

# Bir linux 'test' komutu ve dosya varlığı için '-f' bayrağını kullanarak temizleme csv dosyasının var olup olmadığını test edin.
# Dosya yoksa, bir hata mesajı verin ve ardından komut dizisinden çıkın.

Eğer [ ! -f $ {CSV}] o zaman 
echo cleanup.csv dosyası mevcut değil.
çıkış -1
olmak

# Şimdi CSV'yi dos biçiminde kaydedilmişse, satır başı karakterlerini kaldırarak Unix biçimine dönüştürün.
# Çıktıyı geçici bir dosyaya kaydedin, ardından geçici dosyayı orijinal adıyla yeniden adlandırın.

tr -d ' r' temp.csv 
mv temp.csv $ CSV

# Şimdi, CSV dosyasını satır satır gözden geçirin ve ilk argümanın adını saklayın.
# kategori / dizin adı, bunun üzerine, kalan tüm bağımsız değişkenler,
# bu dizinlere yerleştirilir.

csvline okurken 
yapmak
count = 1
echo '$ csvline' içindeki dosya türü için | tr, ' n'`
yapmak
eğer [$ sayım -eq 1] ise
# Bu ilk argüman olduğundan, klasörün zaten var olup olmadığını kontrol edin ve yoksa oluşturun.
Eğer [ ! -d $ {DESKTOP} / $ dosya türü] sonra
# Dizin mevcut değil, bu yüzden onu oluşturacağız.
mkdir $ {DESKTOP} / $ dosya türü
olmak
KATEGORİ = $ {dosya türü}
Başka
# Komut dosyasının ne yaptığını belirten dostça bir mesaj çıktılar.
echo '*. $ {filetype}' i $ {CATEGORY} konumuna taşınıyor '
# Dosyaların mevcut olmaması durumunda dosyaları taşırken herhangi bir hata mesajı (örn.> 2 / dev / null) göstermeyin,
# böylece 'mv' komutu 'sessizdir'.
mv $ {DESKTOP} /*.$ {filetype} $ {DESKTOP} / $ {CATEGORY} 2> / dev / null
olmak
count = `expr $ count + 1`
bitti
bitti< cleanup.csv
7 dakika okundu