Kaip iš scenarijaus galite naudoti tik "Windows' integruotas galimybes?

"Windows" galite užrišti kai kuriuos failus

dešiniuoju pelės mygtuku spustelėkite → Siųsti įSuspaustas (užtrauktas) aplankas

Ir išpakuokite dukart spustelėję .zip failą ir išskleiskite failus.

Ar yra būdas taikyti šiuos gebėjimus iš scenarijaus (.bat failo) neįdiegiant jokios trečiosios šalies programinės įrangos?

Sprendimas

2013 m. to padaryti nebuvo įmanoma. "Microsoft" nepateikė jokios tam skirtos vykdomosios programos.

Žr. šią nuorodą, kurioje pateikiamas tam tikras VBS būdas tai padaryti. https://superuser.com/questions/201371/create-zip-folder-from-the-command-line-windows

Nuo "Windows 8" pagal nutylėjimą įdiegta .NET Framework 4.5, su System.IO.Compression.ZipArchive ir "PowerShell" galima rašyti scenarijus, kaip tai pasiekti, žr. https://stackoverflow.com/a/26843122/71312

Komentarai (8)

Ieškojau atsakymo į šį klausimą ir iš mano tyrimų, DiryBoy atsakymas atrodo tikslus.

Radau, kad programa compact.exe suspaudžia failus, bet ne tam, kad sukurtų labai suspaustą failą (arba failų rinkinį). Ji panaši į parinktį, kurią gaunate dešiniuoju pelės klavišu spustelėję disko raidę arba skaidinį "Windows" sistemoje. Gaunate galimybę atlikti valymą (pašalinti laikinuosius failus ir t. t.), taip pat suspausti failus. Suspausti failai vis tiek yra prieinami, bet jie tik suspaudžiami, kad diske, kuriame trūksta vietos, atsirastų vietos.

Taip pat radau compress.exe, kurį atsitiktinai turėjau savo kompiuteryje. Daugumoje "Windows" kompiuterių jo nėra, jis yra 2003 m. išteklių rinkinio dalis. Jis sukuria savotišką zip failą, bet iš tikrųjų jis labiau panašus į failus iš "Windows" sąrankos disko (turi pabraukimą kaip paskutinį failo plėtinio ar pavadinimo simbolį). O komanda extract.exe tuos failus ištraukia.

Vis dėlto, jei tai galima padaryti per grafinę sąsają, greičiausiai yra būdas tai padaryti per paketą, .vbs ar kito tipo scenarijų komandinėje eilutėje. Kadangi "Windows" turi 'send to' parinktį, kuria galima sukurti zip failą, žinojau, kad turi būti būdas tai padaryti per komandinę eilutę, ir radau keletą variantų.

Čia yra puiki nuoroda, kurioje parodyta, kaip užrišti failą naudojant "Windows" gimtąsias komandas.

https://superuser.com/questions/110991/can-you-zip-a-file-from-the-command-prompt-using-only-windows-built-in-capabili

Išbandžiau jį su katalogu, kuriame yra daugybė įkeltų failų ir aplankų, ir jis veikė puikiai. Tiesiog laikykitės komandinės eilutės formato.

Taip pat yra būdas išpakuoti failus per komandinę eilutę, kurį taip pat radau. Vienas iš būdų, tiesiog atneša atidarytą Explorer langą, rodantį, koks yra užpakuoto failo turinys. Kai kuriuose iš jų taip pat naudojama Java, kuri nebūtinai yra gimtoji langams, bet yra tokia paplitusi, kad beveik taip atrodo.

https://superuser.com/questions/149489/does-windows-7-have-unzip-at-the-command-line-installed-by-default

https://stackoverflow.com/questions/1021557/how-to-unzip-a-file-using-the-command-line

Komentarai (1)

Suspaustą užpakalinį arba gimtąjį suspaustą "Windows" failą galite išskleisti naudodami komandą Išskleisti, pvz.

expand MyFile.zip myFile
Komentarai (5)