W rzeczywistości istnieje jednoliniowy ekwiwalent, który tworzy archiwa zip, a istnieje nawet jednolinijkowy odpowiednik, czyli plik tar. Pierwszym miejscem, w którym powinieneś szukać takiej funkcji bibliotecznej, jest PowerShell Community Extensions, zapewniając bogactwo wysokiej jakości rozszerzeń bibliotecznych PowerShell. Niestety, wyszukiwanie w Internecie konkretnego elementu, na przykład funkcja tworzenia zip, prawdopodobnie nie przyniesie żadnego efektu, ponieważ nigdzie na stronie lub w dokumentacji nie zawiera ona listy poleceń i funkcji! Aby dowiedzieć się, musisz zainstalować bibliotekę, a następnie wykonaj help about_pscx
. Przesiewanie, że tutaj jest to, co znajdziesz odpowiednie do twojego pytania:
Write-Zip
Create ZIP format archive files from pipline or parameter input.
Write-GZip
Create GNU ZIP (GZIP) format files from pipeline or parameter input.
Write-Tar
Create Tape Archive (TAR) format files from pipeline or parameter input.
i tu, z ich osadzonych przykłady są, jak można z nich korzystać:
PS> dir c:\logs\ -rec -inc *.log | write-zip -level 9 -removeoriginal
PS> dir c:\logs\ -rec -inc *.log | write-tar -output logs.tar | write-gzip -level 9 | move-item c:\archived_logs\
Czy możesz pokazać 7- zip sloution. Dziękujemy –
@ F505, możesz teraz zrobić to bezpośrednio w PS, zobacz zaktualizowaną odpowiedź. – zdan
@ F505 Próbujesz wyodrębnić z archiwum, a nie tworzyć. Nie sądzę, że wbudowane funkcje archiwizacji PowerShell obsługują gzip. Spróbuj zadać osobne pytanie. – zdan