විධාන රේඛාවෙන් zip ලේඛනාගාරය නිර්මාණය කර උකහා ගන්නේ කෙසේද?
විධාන රේඛාවෙන් zip ලේඛනාගාරය නිර්මාණය කර උකහා ගන්නේ කෙසේද?
Answers:
සාමාන්යයෙන් එක් භාවිත tar
වන නොහැකිළු සංරක්ෂිත නිර්මාණය කිරීමට සහ එක්කෝ gzip
හෝ bzip2
බව සංරක්ෂිත සංකෝචනය කිරීමට. ඉහත සඳහන් ලේඛනාගාරය සම්පීඩනය කිරීමට අනුරූප gunzip
සහ bunzip2
විධාන භාවිතා කළ හැකිය, නැතහොත් tar
සම්පීඩනය සිදු කිරීම සඳහා ඔබට විධානයෙහි කොඩි භාවිතා කළ හැකිය .
ඔබ විශේෂයෙන් සිප් ගොනු ආකෘතියට යොමු කරන්නේ නම් , ඔබට සරලවම zip
සහ unzip
විධාන භාවිතා කළ හැකිය .
සම්පීඩනය කිරීමට:
zip squash.zip file1 file2 file3
හෝ නාමාවලියක් zip කිරීමට
zip -r squash.zip dir1
සම්පීඩනය කිරීමට:
unzip squash.zip
මෙය ඔබගේ වර්තමාන වැඩ කරන නාමාවලියෙහි එය ඉවත් කරයි.
zip -r9 archive.zip files...
සින්ටැක්ස් භාවිතා කරමි (-r = පුනරාවර්තන -9 = උපරිම සම්පීඩනය).
zip
.ZIP ලේඛනාගාරයේ විවිධ රසයන් නිර්මාණය කළ හැකි අතරම විවිධ සම්පීඩක භාවිතා කළ හැකිය. අනෙක් අතට, ඒ හා සමාන තවත් සම්පීඩන මෙවලම් ගණනාවක් තිබේ: 7-Zip, gzip, bzip2, rzip, ආදිය එකිනෙකට හුවමාරු නොවන.
cd dir1; zip -r ../squash.zip *
unzip -d myfolder squash.zip
වෙනම නව නාමාවලියකට ( myfolder
) උපුටා ගැනීම සඳහා භාවිතා කරන්න , සිප් ගොනුවේ ඉහළ මට්ටමේ බොහෝ ගොනු සහ නාමාවලි අඩංගු නම් එය කරදරයක් විය හැකිය. බොහෝ UI unzip මෙවලම් ක්රියා කරන ආකාරය මෙය අනුකරණය කරයි.
සැබෑ ඇත විශාල මම එසේ ඔබ වඩා වර්ගීය අර්ථයෙන් "සිප්" අදහස් භාර ගැනීමට යන්නේ යුනික්ස් ව්යුත්පන්න යටතේ සංකෝචනය හා uncompress කිරීමට විවිධ ක්රම සංඛ්යාව නිශ්චිත ගොනු ආකෘතිය.
GNU tar
වැඩසටහන සමඟ ඔබට ලිපිගොනු ඉහළට (සම්පීඩිත ආකෘතියෙන්) සිප් කළ හැකිය :
tar -zcvf myfile.tgz .
එය වත්මන් නාමාවලිය කරනු ඇත. .
ඔබට වෙනත් දෙයක් අවශ්ය නම් වෙනත් ගොනු නම් සමඟ ප්රතිස්ථාපනය කරන්න .
එම ගොනුව ඉවත් කිරීමට, භාවිතා කරන්න:
tar -zxvf myfile.tgz
එය උපකල්පනය කරන්නේ ඔබට tar
සම්පීඩනය කිරීමට මෙන්ම ලිපිගොනු එකකට ඒකාබද්ධ කිරීමට හැකියාවක් ඇති බවය.
එසේ නොවේ නම්, ඔබ භාවිතා කළ හැකිය tar cvf
විසින් අනුගමනය gzip
සම්පීඩන සඳහා (නැවත, ලබා ගත හැකි නම්) සහ gunzip
පසුව tar xvf
.
ZIP ආකෘති ගොනු නිශ්චිතව හැසිරවීම සඳහා, එය බාගත 7zip
කර භාවිතා කිරීමට මම නිර්දේශ කරමි - එය ZIP එක ඇතුළුව විශාල ගොනු ආකෘති හඳුනා ගනී .
tar jcvf file.tar.bz2...
bzip2 ආකෘතියෙන් හෝ tar Jcvf file.tar.xz ...
xz සම්පීඩනය සඳහා සම්පීඩනය කිරීමට භාවිතා කරන්න.
ඔබට zip සහ unzip පැකේජ ස්ථාපනය කර නොමැති නම් සහ ඔබට ජාවා තිබේ නම්, ඔබට jar
unzip කිරීමට භාවිතා කළ හැකිය :
jar -xf file.zip
හොඳයි, විවිධ මෙහෙයුම් පද්ධති සඳහා ලිපිගොනු බෙදා හැරීමේදී, මම 7-zip නිර්දේශ කරමි .
සාමාන්යයෙන් පැකේජයේ දී p7zip
, ඔබට ඔබේම 7z ලේඛනාගාරයක් සෑදිය හැකි 7z
සහ 7za
විධානය ලැබෙනු ඇත .
7za
සම්මත ( pkzip ) zip ලේඛනාගාරය දිරාපත් කළ හැකිය (සහ ඒවා -tzip
ස්විචය සමඟ නිර්මාණය කරන්න ).
සම්පීඩනය:
7za a archive.7z file1 file2 directory/
විසංයෝජනය:
7za x archive.7z
-sfx
ස්විචය සමඟ ස්වයං-නිස්සාරණ ලේඛනාගාරයක් ද එයට නිර්මාණය කළ හැකිය:
7za a -sfx archive.exe files1 file2 dir
වින්ඩෝස් පරිශීලකයින්ට 7z ලේඛනාගාරය විවෘත කළ නොහැකි නම් මම මෙම ක්රමය නිර්දේශ කරමි (ඔබට ඒ සඳහා මෙවලමක් උපදෙස් දීමට අවශ්ය නම්: PeaZip ).
ඔබේ ටාබෝල් සමඟ එකම සම්පීඩන ඇල්ගොරිතම භාවිතා කිරීමට ඔබට අවශ්ය නම්, -J
සමඟ ස්විචය භාවිතා කරන්න tar
:
tar cJf archive.tar.xz file1 file2 dir
xz
සම්පීඩන සඳහා LZMA2 භාවිතා කරන නමුත්, මාර්ගය වැඩ සඳහා යුනික්ස් මෙවලම, ය gz
, bz2
යනාදිය ක්රියා කරයි. එය පෙරනයක් ලෙස පවා ක්රියා කරයි.
7z යුනික්ස් හි සම්පූර්ණ ගොනු පද්ධති තොරතුරු සහිත ලේඛනාගාරයක් නිර්මාණය නොකරයි, එබැවින් ඔබ tar
7z භාවිතා කිරීමට පෙර භාවිතා කිරීමට අවශ්ය වනු ඇත (නමුත් 7z tar
ගොනුව පිළිබඳ වෙනත් තොරතුරු ගබඩා කරන බැවින් xz
, එය නිර්මාණය කර ඇති බැවින් භාවිතා කිරීමට මම නිර්දේශ කරමි ):
tar cf - file1 file2 dir | 7za z -si archive.tar.7z
atool
, එය විවිධ සම්පීඩක භාවිතා කිරීම වඩාත් සුවපහසු කරන කුඩා කුඩා මෙවලමකි. බව බඳින්න a
බවට පත් හා සංරක්ෂණ නිර්මාණය a arc.7z folder/
හෝ සරල නිස්සාරණයa arc.7z
unzip <filename>
හා
zip -r archive.zip <filename> [filename]
මෙම විධානයන් ඔබේ පැකේජ කළමනාකරු හරහා ස්ථාපනය කර ඇති බවට ඔබ සහතික විය යුතුය. විධාන රේඛාවේ වෙනත් කිසිවක් භාවිතා කිරීමට වඩා එය අපහසු නැත. තාර සමඟ ලේඛනාගාර සෑදීමට වඩා එය සරල ය.
BSD තාරයටද මෙය කළ හැකිය
bsdtar -a -c -f sunday.zip sunday.jpg
හෝ:
bsdtar -x -f sunday.zip
tar
GNU tar
සහ අනෙකුත් ඒවාට සාපේක්ෂව අතිරේක සම්පීඩන ආකෘති කිහිපයකට සහය දැක්වීමේ වාසිය BSD සතුව ඇත tar
. ලොකුම වාසිය නම්, සමහර විට, එය සමාන වාක්ය ඛණ්ඩයක් භාවිතා කරන අතරතුරtar
එසේ කිරීමයි . නියත වශයෙන්ම ඔබ භාවිතා කළ හැකිය 7z
, unrar
, unzip
එම commandline සිට, ආදිය, නමුත් ඔවුන් භාවිතා විවිධ කාරක රීති.
වඩාත්ම සම්මත පිළිතුර නම් pax
, එය නිර්දේශ කරනුයේ cpio
සහ tar
.
cpio
POSIX මෙන් නොව tar
, නමුත් GNU මෙන් tar
, pax
සංරක්ෂිත ලිපිගොනු සහ සංරක්ෂිතය සම්පීඩනය කළ හැකිය. මෙම හැසිරීම වෙනස් වේ zip
, එය එක් එක් ගොනුව සංරක්ෂිතයට දැමීමට පෙර සම්පීඩනය කරයි.
pax
සහාය සිප් ඇසුරුම්?
pax
ලේඛනාගාරයට සහය නොදක්වයි !
මෙය ආවරණය කරන්නේ නිස්සාරණය පමණි.
ඒ සඳහා මම භාවිතා කිරීමට පටන් ගෙන dtrx
ඇත.
එහි සමස්ත කරුණ වන්නේ සංකීර්ණත්වය ඉවත් කිරීමයි. එබැවින් ඔබ ඕනෑම ලේඛනාගාරයක් තුළට ගොස් එය සමඟ කළ යුතු දේ එයින් සොයා ගනී. Zip, tar, gz ... භාවිතය සැමවිටම එක හා සමානයි - dtrx archive.zip
. එය ප්රශ්න කිහිපයක් අසන අතර ඔබ ඉවරයි.
dtrx
බොහෝ ගබඩාවල ඇත, එබැවින් ඔබට apt
| yum
එය ස්ථාපනය කරන්න.
මගේ වැඩ නාමාවලියෙහි නවීකරණය කරන ලද ලිපිගොනු සිප් කිරීමට මම බොහෝ විට උත්සාහ කරමි - එක්කෝ නවීකරණය කරන ලද ලිපිගොනු වෙනත් සෑන්ඩ්බොක්ස් වැඩ නාමාවලියකට පිටපත් කිරීමට හෝ කෙටි කාලයක් සඳහා ඒවා සංරක්ෂණය කිරීමට මට අවශ්ය නිසා සමහර වෙනස්කම් අහෝසි කිරීමට මට අවශ්යය.
එවැනි අවස්ථාවක, මම නවීකරණය කරන ලද ගොනු ලැයිස්තුව තාවකාලික ගොනුවකට පිටපත් zip
කර විකල්පය සමඟ භාවිතා කරමි -@
.
මම Foo.h, Bar.cc, සහ TestBar.cc ගොනු වෙනස් කළ බව කියමු.
මම නවීකරණය කරන ලද-ගොනු.ටෙක්ස් නමින් ගොනුවක් නිර්මාණය කරමි යැයි කියමු.
Foo.h
Bar.cc
TestBar.cc
එම ලිපිගොනු zip කිරීම සඳහා මම පහත විධානය ක්රියාත්මක කරමි:
cat modified-files.txt | zip modified-files.zip -@