Natywne polecenia systemu Linux w systemie Windows 11 bez potrzeby korzystania z WSL
Uruchamiaj natywne polecenia Linuksa bezpośrednio w systemie Windows 11. Ciesz się mocą Coreutils bez potrzeby korzystania z WSL. Pełna kontrola nad systemem!
Najważniejsze rzeczy, które musisz wiedzieć
- Pakiet Coreutils udostępnia ponad 75 narzędzi wiersza poleceń w stylu systemu Linux, takich jak ls, cp i rm, które działają natywnie w systemie Windows 11. Celem jest zapewnienie deweloperom spójności bez potrzeby korzystania z WSL, wiedząc, że system jest wciąż w fazie zapoznawczej.
- Pakiet Coreutils można łatwo zainstalować w systemie Windows 11 za pomocą polecenia winget install Microsoft.Coreutils w dowolnej konsoli. Wymaga to ponownego uruchomienia konsoli po instalacji i dostępności programu PowerShell 7.4 lub nowszego.
- Wiele poleceń Coreutils, takich jak cat, cp, ls i rm, koliduje z poleceniami wbudowanymi w program PowerShell, w którym wbudowany alias zwykle ma pierwszeństwo, wymagając jawnego wywołania lub modyfikacji zmiennej PATH i tabeli aliasów.
Firma Microsoft wydała Coreutils dla systemu Windows 11, natywną kompilację projektu open source uutils, która wprowadza znane narzędzia wiersza poleceń systemu Linux bezpośrednio do interfejsu wiersza poleceń systemu Windows (powłoki). Nie ma już potrzeby uruchamiania pełnego podsystemu dla systemu Linux. Linux (WSL) Tylko do realizacji codziennych zleceń, takich jak ls أو cp أو rmPakiet działa jako pojedynczy plik wykonywalny (binarny), w którym każde narzędzie jest wyświetlane według standardowej nazwy. Oznacza to, że polecenia, flagi i potoki używane w systemach Linux i macOS będą działać tak samo w systemie Windows.

⚡Szybka odpowiedź: Otwórz terminal Windows i wykonaj polecenie winget install Microsoft.CoreutilsNastępnie uruchom ponownie konsolę. Upewnij się, że używasz programu PowerShell 7.4 lub nowszego.
Czym jest pakiet Coreutils dla systemu Windows 11?
Coreutils to utrzymywana przez firmę Microsoft kompilacja projektu uutils/coreutils, wieloplatformowej reimplementacji podstawowych narzędzi GNU Coreutils napisanych w języku Rust. Microsoft łączy coreutils, findutils i nowo napisane narzędzie grep w jeden, wielowywoławczy plik binarny dla systemu Windows. Głównym celem jest spójność; polecenia, do których programiści przyzwyczaili się przez lata, teraz działają bezpośrednio w standardowym środowisku Windows , bez konieczności kompilacji lub stosowania obejść.
Microsoft ogłosił ogólną dostępność pakietu podczas konferencji Build 2026, opisując go jako zawierający ponad 75 znanych narzędzi wiersza poleceń w stylu Linuksa, działających natywnie w systemie Windows 11. Narzędzia te są nadal oznaczone jako „preview”, więc wczesne wersje mogą zawierać sporadyczne błędy. Pełny opis można znaleźć w dokumentacji platformy Microsoft Learn.
Zawierał Windows 11 już Niektóre narzędzia inspirowane Linuksem, takie jak curl و tar Narzędzia OpenSSH i Menedżer pakietów systemu Windows. Coreutils wypełnia lukę po podstawowych poleceniach plików i skryptów, które wcześniej nie były dostępne natywnie.
Polecenia zawarte w pakiecie Coreutils
Ta wersja obejmuje polecenia plików i skryptów, z których korzysta większość programistów, a także wbudowane aplikacje findutils i grep. Każde polecenie obsługuje ten tag. --help Standard, umożliwiający sprawdzenie pełnej struktury i opcji bezpośrednio w terminalu.
| Komenda | jego praca |
|---|---|
ls |
Wyświetla listę plików i folderów |
cp |
Kopiuje pliki i foldery |
mv |
Przenosi lub zmienia nazwy plików |
rm |
Usuwa pliki i foldery |
cat |
Wyświetla zawartość pliku |
mkdir |
Tworzy foldery |
touch |
Tworzy pliki lub aktualizuje znaczniki czasu |
pwd |
Wyświetla bieżącą ścieżkę folderu |
To tylko główne polecenia. Pakiet zawiera również wbudowane porty dla natywnych poleceń DOS. sort و findPonadto istnieje warstwa kompatybilności (shim), która zachowuje funkcjonalność istniejących wywołań w stylu DOS, a także opakowanie programu PowerShell dla wzorców glob.
Jak zainstalować Coreutils w systemie Windows 11
Aby zainstalować pakiet Coreutils w systemie Windows 11 , można skorzystać z dwóch metod, z których najszybsza polega na wykorzystaniu Winget, wbudowanego menedżera pakietów systemu.
1. Otwórz terminal Windows, wiersz poleceń lub program PowerShell.
2. Wykonaj następujące polecenie instalacyjne:
winget install Microsoft.Coreutils
3. Uruchom ponownie konsolę, aby załadować nowe polecenia do sesji. Po jej ponownym otwarciu polecenia będą dostępne bez konieczności uruchamiania osobnego środowiska Linux.
Jeśli wolisz pobrać bezpośrednio, możesz pobrać instalator z oficjalnej strony wydania Coreutils. Microsoft oferuje wersje dla systemów x64 i arm64, więc wybierz wersję zgodną z Twoim systemem.
✅Będziesz wiedzieć, że instalacja zakończyła się sukcesem, gdy zostanie wydane polecenie takie jak ls Wyświetla listę plików. Jeśli po instalacji nie zostanie znalezione żadne polecenie, problem często jest związany ze zmienną PATH. Najpierw uruchom ponownie konsolę, a następnie upewnij się, że katalog instalacyjny znajduje się w zmiennej PATH, zanim zaczniesz badać dalsze problemy.
Obsługa powłoki i wymagania programu PowerShell 7.4
Coreutils działa z wierszem poleceń, programem PowerShell i terminalem Windows, ale jest jeden kluczowy wymóg: Coreutils wymaga programu PowerShell w wersji 7.4 lub nowszej; starsze wersje nie będą działać. Jeśli używasz starszej wersji, najpierw zaktualizuj program PowerShell, a następnie zainstaluj Coreutils.
Wykonanie konkretnego polecenia zależy w rzeczywistości od trzech czynników: używanej powłoki, kolejności zmiennej PATH oraz, w programie PowerShell, tabeli aliasów. Wiele nazw poleceń Coreutils pokrywa się z nazwami wbudowanych poleceń powłoki, co zmienia sposób, w jaki system Windows je interpretuje.
Konflikty poleceń w CMD i PowerShell
Niektóre polecenia pojawiają się i działają bezproblemowo, inne pojawiają się, ale kolidują z poleceniem wbudowanym, a kilka w ogóle nie pojawia się. Gdy polecenie powoduje konflikt w programie PowerShell, zazwyczaj przeważa alias wbudowany. Można jawnie wywołać wersję Coreutils lub zmodyfikować zmienną PATH i tabelę aliasów, aby kontrolować, które polecenia są uruchamiane w systemie Windows.
| Komenda | CMD | PowerShell 7.4+ | Uwagi |
|---|---|---|---|
cat |
Pracuje | konflikt | |
cp |
Pracuje | konflikt | |
date |
konflikt | konflikt | |
dir |
غير متضمن | غير متضمن | Powoduje konflikt z wbudowanym poleceniem DOS |
echo |
konflikt | konflikt | |
find |
Pracuje | Pracuje | Kompaktowa wersja polecenia DOS |
hostname |
Pracuje | Pracuje | Omija funkcjonalność wbudowanego polecenia systemu Windows. |
kill |
غير متضمن | غير متضمن | System Windows nie obsługuje sygnałów POSIX. |
ls |
Pracuje | konflikt | |
mkdir |
konflikt | konflikt | |
more |
غير متضمن | غير متضمن | Powoduje konflikt z wbudowanym poleceniem DOS |
mv |
Pracuje | konflikt | |
pwd |
Pracuje | konflikt | |
rm |
Pracuje | konflikt | |
sort |
Pracuje | Pracuje | Kompaktowa wersja polecenia DOS |
tee |
Pracuje | konflikt | |
uptime |
Pracuje | konflikt | |
whoami |
غير متضمن | غير متضمن | Powoduje konflikt z wbudowanym poleceniem systemu Windows |
Ważne ostrzeżenia w systemie Windows, które mogą zakłócić działanie skryptów
Coreutils w większości przypadków zachowuje się podobnie do swojego odpowiednika w systemie Linux, ale pewne różnice specyficzne dla systemu Windows mogą zakłócać działanie skryptów. Należy koniecznie rozważyć te kwestie przed użyciem tych poleceń w środowiskach produkcyjnych.
- Zakończenia linii CRLF: Jest często używany Pliki systemu Windows Zakończenia wierszy tekstu (CRLF). Większość narzędzi obsługuje to transparentnie, ale dopasowywanie wzorców odbywa się za pomocą kodu.
$Dokładna liczba bajtów może ulec zmianie. - Nie ma /dev/null: posługiwać się
NULZamiast tego na przykładfind . -name "*.log" > NUL. - Brak sygnałów POSIX: System Windows nie obsługuje sygnałów takich jak SIGHUP i SIGPIPE, chociaż kombinacja klawiszy Ctrl+C działa zgodnie z oczekiwaniami.
- Przerwy w utworach: Oba są akceptowane
/وJednak niektóre narzędzia generują dane wyjściowe rozdzielone ukośnikami, co może mieć wpływ na późniejsze przesyłanie danych wyjściowych. - Uprawnienia pliku: System Windows używa list kontroli dostępu (ACL) zamiast bitów uprawnień POSIX, więc wyrażenia warunkowe mogą zachowywać się w następujący sposób
find -permW inny sposób lub pozostać niedostępnym. - Linki symboliczne: Odczyt istniejących dowiązań symbolicznych działa bez konieczności posiadania podwyższonych uprawnień. Tworzenie nowych dowiązań wymaga trybu programisty lub terminala z uprawnieniami administracyjnymi w systemie Windows 11.
Coreutils vs. WSL: Kiedy stosować którykolwiek z nich?
Coreutils nie ma być całkowitym zamiennikiem Podsystemu Windows dla Linuksa (WSL). Eliminuje on raczej konieczność uruchamiania pełnego podsystemu Linux w celu wykonania kilku typowych poleceń. Używaj Coreutils, gdy potrzebujesz szybkiego i natywnego dostępu do narzędzi, takich jak: ls و cp و rm Bezpośrednio w standardowym wierszu poleceń systemu Windows. Zarezerwuj WSL dla pełnych obciążeń Linux, menedżerów pakietów, aplikacji wyłącznie Linux i przepływów pracy kontenerów, które opierają się na prawdziwym jądrze Linux.
Dla programistów, którzy nieustannie przełączają się między serwerami Linux, kontenerami, środowiskami chmurowymi i systemem Windows w ciągu dnia, prawdziwa wartość nie tkwi w samych poleceniach – użytkownicy Linuksa korzystają z nich od dziesięcioleci. Wartość leży w spójności, eliminującej dziesiątki drobnych przerw, które pojawiają się, gdy zatrzymujemy się, aby przypomnieć sobie, które polecenie działa w danym środowisku.
Coreutils jest częścią szerszej inicjatywy ogłoszonej przez Microsoft podczas konferencji Build 2026 , mającej na celu zmniejszenie izolacji systemu Windows od szerszego środowiska programistycznego. To podejście opiera się na tym samym schemacie, co WSL, Windows Terminal, OpenSSH i WinGet, przenosząc istniejące przepływy pracy programistów do systemu Windows, bez konieczności ich ponownego uczenia się. Należy jednak pamiętać, że ten pakiet jest nadal w fazie zapoznawczej, dlatego przed jego pełnym wdrożeniem należy go dokładnie przetestować ze swoimi skryptami.
Możliwość dodawania komentarzy nie jest dostępna.