Jeśli chcesz zobaczyć bardziej szczegółowe omówienie różnic w poleceniach, zobacz sekcję Szczegóły dotyczące różnic poniżej.
Z LeMoDa.net stronie 1 ( archiwum ), a konkretnie polecenia ekwiwalenty linii Windows i Unix strony ( archiwum ), znalazłem następujące 2 . W następnej edycji jest lepsza / pełniejsza tabela.
Windows command Unix command
rmdir rmdir
rmdir /s rm -r
move mv
Chcę usłyszeć od @Dave i @javadba, aby usłyszeć, jak równoważne są polecenia - jak porównuje się „ zachowanie i możliwości ”, czy są całkiem podobne, czy „ żałośnie NIE równoważne ”.
Dowiedziałem się tylko, że kiedy użyłem go do próby rekurencyjnego usunięcia katalogu i jego plików składowych i podkatalogów, np.
(Windows cmd)>rmdir /s C:\my\dirwithsubdirs\
przekazał mi standardowy komunikat i monit o systemie Windows „wie lepiej niż czy jesteś pewien”
dirwithsubdirs, Are you sure (Y/N)?
i że kiedy pisałem Y
, wynik był taki, że mój główny katalog i jego pliki składowe i podkatalogi zniknęły.
Edytować
Patrzę na to wstecz po znalezieniu tej odpowiedzi . Ponownie wykonałem każde z poleceń i zmieniłem nieco tabelę.
Windows command Unix command
rmdir rmdir
rmdir /s /q rm -r
rmdir /s /q rm -rf
rmdir /s rm -ri
move mv
del <file> rm <file>
Jeśli chcesz mieć odpowiednik dla
rm -rf
możesz użyć
rmdir /s /q
lub, jak opisał autor odpowiedzi, którą pozyskałem,
Ale jest jeszcze inny sposób na „starą szkołę”, który był używany w czasach, gdy polecenia nie miały opcji pomijania komunikatów potwierdzających. Po prostu ECHO
potrzebna odpowiedź i prześlij wartość do polecenia.
echo y | rmdir /s
Szczegóły dotyczące różnic
Przetestowałem każde z poleceń za pomocą Windows CMD i Cygwin (z jego bash
).
Przed każdym testem wykonałem następującą konfigurację.
Windows CMD
>mkdir this_directory
>echo some text stuff > this_directory/some.txt
>mkdir this_empty_directory
Cygwin bash
$ mkdir this_directory
$ echo "some text stuff" > this_directory/some.txt
$ mkdir this_empty_directory
Spowodowało to następującą strukturę plików dla obu.
base
|-- this_directory
| `-- some.txt
`-- this_empty_directory
Oto wyniki. Zwróć uwagę, że nie oznaczę każdego z nich jako CMD lub bash
; CMD będzie miał z >
przodu, a bash
będzie miał z $
przodu.
RMDIR
>rmdir this_directory
The directory is not empty.
>tree /a /f .
Folder PATH listing for volume Windows
Volume serial number is ████████ ████:████
base
+---this_directory
| some.txt
|
\---this_empty_directory
> rmdir this_empty_directory
>tree /a /f .
base
\---this_directory
some.txt
$ rmdir this_directory
rmdir: failed to remove 'this_directory': Directory not empty
$ tree --charset=ascii
base
|-- this_directory
| `-- some.txt
`-- this_empty_directory
2 directories, 1 file
$ rmdir this_empty_directory
$ tree --charset=ascii
base
`-- this_directory
`-- some.txt
RMDIR /S /Q and RM -R ; RM -RF
>rmdir /s /q this_directory
>tree /a /f
base
\---this_empty_directory
>rmdir /s /q this_empty_directory
>tree /a /f
base
No subfolders exist
$ rm -r this_directory
$ tree --charset=ascii
base
`-- this_empty_directory
$ rm -r this_empty_directory
$ tree --charset=ascii
base
0 directories, 0 files
$ rm -rf this_directory
$ tree --charset=ascii
base
`-- this_empty_directory
$ rm -rf this_empty_directory
$ tree --charset=ascii
base
0 directories, 0 files
RMDIR /S AND RM -RI
Tutaj mamy małą różnicę, ale są całkiem blisko.
>rmdir /s this_directory
this_directory, Are you sure (Y/N)? y
>tree /a /f
base
\---this_empty_directory
>rmdir /s this_empty_directory
this_empty_directory, Are you sure (Y/N)? y
>tree /a /f
base
No subfolders exist
$ rm -ri this_directory
rm: descend into directory 'this_directory'? y
rm: remove regular file 'this_directory/some.txt'? y
rm: remove directory 'this_directory'? y
$ tree --charset=ascii
base
`-- this_empty_directory
$ rm -ri this_empty_directory
rm: remove directory 'this_empty_directory'? y
$ tree --charset=ascii
base
0 directories, 0 files
I'M HOPING TO GET A MORE THOROUGH MOVE AND MV TEST
Uwagi
- Nie wiem prawie nic o stronie LeMoDa, poza tym, że jest to informacja
Prawa autorskie © Ben Bullock 2009-2018 . Wszelkie prawa zastrzeżone.
( zarchiwizowana informacja o prawach autorskich )
i że wydaje się, że istnieje kilka przydatnych wskazówek dotyczących programowania wraz z odrobiną humoru (tak, pisownia brytyjska) i informacjami o tym, jak naprawić japońskie toalety. Znalazłem też coś, co mówiło o „Raporcie Ibarakiego”, ale nie wiem, czy to jest strona internetowa.
Myślę, że będę tam chodził częściej; to całkiem przydatne. Podziękowania dla Bena Bullocka, którego e-mail jest na jego stronie. Jeśli chce, żebym usunął te informacje, to zrobię.
Będę zawierać zastrzeżenie ( archiwum ) z witryny internetowej:
Zrzeczenie się odpowiedzialności Przed użyciem jakiegokolwiek kodu programu komputerowego na tej stronie należy zapoznać się z poniższym zastrzeżeniem.
Program nie podlega gwarancji w zakresie dozwolonym przez obowiązujące prawo. Z wyjątkiem przypadków, gdy inaczej postanowiono na piśmie, właściciele praw autorskich i / lub inne strony zapewniają program „w stanie, w jakim jest” bez jakiejkolwiek gwarancji, wyrażonej lub dorozumianej, w tym, ale nie wyłącznie, dorozumianych gwarancji przydatności handlowej i przydatności do określonego celu . Całe ryzyko związane z jakością i wydajnością programu ponosi użytkownik. W przypadku, gdy program okaże się wadliwy, klient ponosi koszty wszelkich niezbędnych usług serwisowych, napraw lub korekt.
W żadnym wypadku, chyba że jest to wymagane przez obowiązujące prawo lub nie zostało to uzgodnione na piśmie, żaden właściciel praw autorskich ani żadna inna strona, która modyfikuje i / lub przekazuje program w sposób dozwolony powyżej, nie ponosi odpowiedzialności za szkody, w tym wszelkie ogólne, szczególne, przypadkowe lub następcze Szkody wynikające z używania lub niemożność korzystania z programu (w tym między innymi utrata danych lub niedokładne renderowanie danych, straty poniesione przez Ciebie lub osoby trzecie lub brak współpracy programu z innymi programami), nawet jeśli Taki posiadacz lub inna strona została poinformowana o możliwości wystąpienia takich szkód.
- Właściwie znalazłem informacje, wyszukując w Google „odpowiednik cmd rm”
https://www.google.com/search?q=cmd+equivalent+of+rm
Informacje, które udostępniam, pojawiły się jako pierwsze.
del
imove
.