Jak używać skryptów Linuksa do porządkowania pulpitu w systemie Windows 10



Wypróbuj Nasz Instrument Do Eliminowania Problemów

Kiedy po raz pierwszy przeczytasz nagłówek tego artykułu, możesz wybaczyć, że myślisz, że coś jest technicznie nieprawidłowe. W końcu Linux nie jest częścią systemu operacyjnego Windows, prawda? To dwa zupełnie różne systemy operacyjne. Wcześniej jedynym sposobem używania skryptów Linuksa w systemie Windows w przeszłości było zainstalowanie czegoś podobnego Cygwin . lub użyj podwójnego systemu Linux lub zainstaluj coś takiego Samba .



Wszystko to zmieniło się w Windows 10! Istnieje kilka dystrybucji Linuksa dostępnych w Microsoft Windows Store. Ten poprzedni Artykuł Appuals na temat Kali Linux opisuje jedną z takich metod uzyskiwania określonej dystrybucji Linuksa w środowisku Windows 10.



Jedną z zalet używania skryptów Linuksa na komputerze z systemem Windows jest to, że możesz wykorzystać potężny język skryptowy Linuksa do automatyzacji zadań, zwłaszcza jeśli jesteś bardziej zaznajomiony ze skryptami Linuksa niż powiedzmy, pliki wsadowe Powershell lub Dos. W tym artykule wyjaśniono, jak napisać skrypt „bash” systemu Linux, aby oczyścić typowy pulpit systemu Windows. Jeśli jesteś nowy w Linuksie, nauczysz się podstaw z tego artykułu i przy okazji stworzysz przydatne narzędzie.



Będziemy używać podstawowego terminala Ubuntu Linux (dostępnego w Sklepie Windows na komputerach z systemem Windows 10), który umożliwia korzystanie z poleceń bash, k ssh, git, apt i wielu innych poleceń systemu Linux. Będzie trzeba to zainstalować, jeśli jeszcze tego nie zrobiłeś. Metoda jest wyjaśniona tutaj .

Linia poleceń Linuksa

Po zainstalowaniu i uruchomieniu Ubuntu pojawi się okno wiersza poleceń, podobne do poniższego. To da ci bash Linux, wiersz poleceń:



Teraz napiszemy nasz skrypt. Możesz edytować plik za pomocą dowolnego edytora, w tym edytora Windows, takiego jak Notatnik, lub edytora Linux, takiego jak vi, jeśli masz pewność, że go używasz.

Kiedy otworzysz terminal Ubuntu, Twoją lokalizacją będzie katalog domowy w obszarze roboczym Ubuntu. Można to sprawdzić, wprowadzając polecenie w wierszu polecenia:

echo $ HOME

i wyświetli twój katalog domowy, jak pokazano na poniższym zrzucie ekranu. Format Linuksa używa ukośników odpowiadających katalogom, takich jak „/”.

Dla wygody umieścimy skrypt w katalogu domowym.

Następnym krokiem jest ustalenie lokalizacji twojego pulpitu, ponieważ jest to znane jako ścieżka Linuksa. Będziemy tego potrzebować, aby wykonywać akcje na plikach w odpowiednim katalogu.

W terminalu wpisz „cd /”. Spowoduje to przejście do głównego obszaru środowiska Ubuntu.

Następnie wpisz „ls”

Zawiera listę wszystkich katalogów w Linuksie. Zobaczysz coś takiego w terminalu Linux:

Musimy znaleźć pulpit użytkownika. Zakładając, że znajduje się na dysku C, przejdź do katalogu „mnt”. W tym miejscu dyski Windows zostaną zidentyfikowane w następujący sposób:

Następnie musisz wiedzieć, w którym katalogu znajduje się twój pulpit. Zwykle można to znaleźć w oknach, klikając prawym przyciskiem myszy ikonę na pulpicie, jak na liście „Szybki dostęp” w Eksploratorze plików. Zostanie wyświetlona lokalizacja katalogu na pulpicie:

Z tego możesz przejść do swojego katalogu za pomocą Linuksa w terminalu:

Dlatego w tym przykładzie wpisujesz terminal, pamiętając, że ukośniki odwrotne w systemie Windows są równoważne ukośnikom w systemie Linux. W moim przypadku ścieżka potrzebna w poleceniu „zmień katalog” to:

cd / mnt / c / Users / gofor / OneDrive / Desktop

Następnie możesz wyświetlić listę wszystkich plików na pulpicie, używając „ls”:

Jeśli jest podobny do mojego pulpitu, otrzymasz długą listę plików, takich jak:

Możesz zobaczyć, jak niechlujnie wygląda mój pulpit w systemie Windows tutaj:

Na moich pozostałych 2 monitorach było więcej ikon, więc musimy sklasyfikować i uporządkować te pliki! Dostarczony skrypt przyjmie każdy typ plików i umieści je w odpowiednio nazwanym folderze na pulpicie.

Na przykład pliki skrótów będą to pliki * .lnk, więc przeniesiemy je do folderu o nazwie „SHORTCUTS”.
Podobnie pliki graficzne, takie jak .jpg, .png, .bmp, .svg, zostaną przeniesione do folderu o nazwie „IMAGES”.
Dokumenty i dokumenty Office, takie jak pliki tekstowe, np. Docx, .pdf, .xls, zostaną umieszczone w folderze o nazwie „OFFICEDOCS”.

Po uruchomieniu skryptu wszystkie dokumenty będą dostępne w zorganizowany sposób, w odpowiednim katalogu utworzonym dla tej kategorii plików. Spowoduje to uporządkowanie pulpitu i uporządkowanie plików na pulpicie. Możesz utworzyć dowolną liczbę typów folderów i zdefiniować kryteria plików. Pliki nie muszą być organizowane tylko według typów plików, możesz tworzyć foldery kategorii według własnego uznania, takie jak „HRFILES” i „PROJECTFILES”. W tym przykładzie będziemy organizować pliki według ich typu.

Tworzenie kategorii i listy plików

Aby korzystać z tej aplikacji, będziemy potrzebować 2 plików:

A) Lista kategorii i typów plików do umieszczenia w tych kategoriach przechowywanych w pliku CSV rozdzielanym przecinkami. Nazwa każdej kategorii będzie nazwą katalogu, w którym pliki zostaną umieszczone na pulpicie. Możesz utworzyć plik CSV w dowolnym preferowanym edytorze. W tym przykładzie będziemy używać notatnika.
B) Skrypt Linuksa, który odczyta plik kategorii i przetworzy wymaganą funkcję porządkowania.

Aby utworzyć plik w bieżącym katalogu w typie terminala:

Notatnik cleanup.csv

Ponieważ plik nie będzie istniał na tym etapie, zażąda utworzenia nowego pliku, więc po prostu naciśnij „Tak”.

Teraz wprowadzimy następujące szczegóły w formacie „category, filetype1, filetype2, filetype3,… itd.” 1 wiersz dla każdej kategorii, w ten sposób:

SHORTCUTS, lnk 
OBRAZY, jpg, png, svg
DOKUMENTY, txt, docx, doc, pdf

Pierwsze pole będzie nazwą katalogu na pulpicie, w którym zostaną umieszczone pozostałe typy plików. Pozostałe pola to typy plików, które chcesz przenieść do folderu.

Dlatego w przypadku folderu SHORTCUTS wszystkie pliki * .lnk zostaną przeniesione do tego folderu. W przypadku folderu IMAGES wszystkie pliki z * .jpg, *. Png i * .svg zostaną przeniesione do folderu IMAGES. Na koniec przenosimy wszystkie pliki * .txt, *. Docx, *. Doc i * .pdf do folderu DOCUMENTS. W ten sposób organizujemy pliki we właściwych katalogach.

Po utworzeniu pliku CSV jesteśmy gotowi do napisania skryptu. Nazwiemy skrypt cleanup.sh. Nawiasem mówiąc, ten skrypt będzie miał minimalną walidację, więc musisz upewnić się, że plik CSV ma prawidłowy format, inaczej nie zadziała! Wszystko, co zrobimy w tym skrypcie, to sprawdzenie, czy pliki i foldery istnieją, jako minimalna kontrola.

Możesz edytować skrypt w terminalu, jeśli znasz edytory typów Unix, takie jak vi, lub możesz po prostu użyć notatnika:

notatnik cleanup.sh

Akcja skryptu polega na ustawieniu w skrypcie nazwy czytanego przez nas pliku CSV oraz lokalizacji pulpitu, który chcemy wyczyścić. Ustawimy zmienne na czyszczący plik CSV i lokalizację na pulpicie. W moim przypadku jest to następujące. Będziesz musiał zmienić lokalizację pulpitu na własną. Zwróć uwagę, że wszystko pomiędzy „” jest symbolem zastępczym, w którym należy wprowadzić określone informacje.

Więc. pierwsze 2 wiersze skryptu to:

DESKTOP = / mnt / c / Users // Desktop 
CSV = cleanup.csv

Pełny skrypt można zobaczyć poniżej. Przeczytaj komentarze, jeśli chcesz zrozumieć polecenia, a jeśli nie jesteś pewien polecenia, spróbuj „man” w wierszu poleceń systemu Linux, aby uzyskać więcej informacji na temat działania polecenia.

Spraw, aby skrypt czyszczenia był wykonywalny i uruchom go

Aby uruchomić skrypt z głównego wiersza poleceń, musisz ustawić go jako wykonywalny za pomocą następującego polecenia:

chmod + x cleanup.sh

Aby uruchomić skrypt, musisz wpisać następujące dane, ponieważ znajduje się w bieżącym katalogu.

./cleanup.sh

Oto jak wyglądał mój pulpit przed i po uruchomieniu skryptu. Możesz zobaczyć, że foldery zawierające przeniesione pliki zostały utworzone, a pulpit jest znacznie mniej zagracony:

Przed: Po:

i katalog SHORTCUTS, gdzie wszystkie skróty zostały przeniesione z pulpitu.

Skrypt Full Desktop Tidy Linux dla systemu Windows

Zwróć uwagę na komentarze w skrypcie poprzedzone znakiem „#”, ponieważ wyjaśniają, jak działa skrypt. # Ustaw zmienne dla lokalizacji lokalnego pulpitu lub dowolnego katalogu, który chcesz wyczyścić, oraz nazwę pliku CSV.

DESKTOP = / mnt / c / Users / gofor / OneDrive / Desktop 
CSV = cleanup.csv

# Sprawdź, czy plik csv czyszczenia istnieje, używając polecenia linux „test” i flagi „-f” wskazującej istnienie pliku.
# Jeśli plik nie istnieje, wyślij komunikat o błędzie, a następnie zamknij skrypt.

gdyby [ ! -f $ {CSV}], a następnie 
echo Plik cleanup.csv nie istnieje.
wyjście -1
być

# Teraz przekonwertuj plik CSV, jeśli został zapisany w formacie dos do formatu uniksowego, usuwając znaki powrotu karetki.
# Zapisz wynik do pliku tymczasowego, a następnie zmień nazwę pliku tymczasowego z powrotem na oryginalną nazwę.

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

# Teraz przejdź przez plik CSV linia po linii i zapisz nazwę pierwszego argumentu, którym jest
# nazwa kategorii / katalogu, na którym wszystkie pozostałe argumenty to typy plików, które będą
# umieszczone w tych katalogach.

podczas czytania csvline 
zrobić
liczba = 1
dla typu pliku w `echo '$ csvline' | tr, ' n'`
zrobić
if [$ count -eq 1] to
# Ponieważ jest to pierwszy argument, sprawdź, czy folder już istnieje, a jeśli nie, utwórz go.
gdyby [ ! -d $ {DESKTOP} / $ filetype] następnie
# Katalog nie istnieje, więc utworzymy go.
mkdir $ {DESKTOP} / $ filetype
być
KATEGORIA = $ {filetype}
jeszcze
# Wyświetla przyjazny komunikat wskazujący, co robi skrypt.
echo 'przenoszenie *. $ {filetype} do $ {CATEGORY}'
# Nie wyświetlaj żadnych komunikatów o błędach (np.> 2 / dev / null) podczas przenoszenia plików w przypadku, gdy pliki nie istnieją,
# więc polecenie „mv” jest „ciche”.
mv $ {DESKTOP} /*.$ {filetype} $ {DESKTOP} / $ {KATEGORIA} 2> / dev / null
być
count = `wyr $ liczba + 1`
Gotowe
Gotowe< cleanup.csv
7 minut czytania