前回の記事で、tarコマンドを使用してアーカイブを作成する方法について詳しく説明しました。 tarはLinux用の非常に一般的な圧縮方式ですが、ほとんどのアーカイブがzip形式を使用して作成されていることを確認するWindowsおよびMac OS Xユーザーにはそれほど人気がありません。
LinuxではZip(作成)およびUnzip(展開)アーカイブを使用するのは簡単です。 実際、ほとんどのGUIアーカイブ管理プログラム(Ark、File Roller、Xarchiverなど)は、コンピュータ上にあるほとんどすべてのコマンドラインアーカイブプログラムのフロントエンドとして機能します。Zipも例外ではありません。 もちろん、ターミナルからZipを使用することもできます。 これはどうですか。
ご想像のとおり、最初のステップはターミナルを開くことです。
次に、zipとunzipがインストールされていることを確認するために、「 sudo apt-get install zip unzip 」と入力します(引用符は含みません )。
注:これら2つのプログラムが既にインストールされている場合は、上記のように、これが当てはまることを示すメッセージが表示されます。
インストールが完了したら、zipを使用してアーカイブを作成(または既存のものを変更)し、解凍して元のファイルに展開します。 この記事では、デスクトップにStuffという名前の新しいフォルダを作成します。 ターミナルでは、 mkdir / home / username / Desktop / Stuffという1つのコマンドでこれを実行できます(もちろん、下に示すように、 "username"を自分のユーザー名に置き換えます。既にStuffフォルダがある場合は、デスクトップでは、名前を変更する必要があります。
Stuffフォルダができたので、 'cd'コマンドを使用してStuffフォルダを現在の作業ディレクトリにします。
cd / home / username / Desktop / Stuff
それでは、あなたのターミナルにtouch doc1.txt、doc2.txt、doc3.txt && mkdir Filesと入力してください。 そうすると 、Stuffフォルダの中に、Filesというフォルダと、doc1.txt、doc2.txt、doc3.txtの3つのドキュメントが作成されます。 。
新しく作成されたFilesフォルダーにcdするためのもう1つのコマンド(cd Files)。その中に他の文書がいくつか必要になるためです。
cdファイル
最後に、3つの新しいドキュメントを作成するためにtouch doc4.txt doc5.txt doc6.txtと入力します。
ここで、 cd ../ ..と入力してデスクトップを作業ディレクトリに戻します。
zipファイルを作成する前の最後のステップは、先ほど作成したファイルと同じ名前を使用してデスクトップに「追加の」ドキュメントをいくつか作成することです。それらを作成するには、 touch doc2.txt doc3.txtと入力します。
最後に、2つの「追加の」テキストファイルをそれぞれ開き、それらにテキストを追加します。 意味のある(または長い)ものである必要はありません。これらの文書は、Stuffフォルダーおよびfilesフォルダー内に既に作成されているものと実際には異なることがわかります。
それが終わったら、zipファイルの作成を始めます。 zipを使用する最も簡単な方法は、作成したいzipアーカイブの名前をそれに伝えてから、そこに入れるべきすべてのファイルに明示的に名前を付けることです。 したがって、作業ディレクトリがデスクトップであると仮定すると、test.zipというアーカイブを作成するためにzip test Stuff / doc1.txt Stuff / doc2.txt Stuff / doc3.txtと入力します(“ .zipを使用する必要はありません)。これは、Stuffフォルダー内にあるdoc1.txt、doc2.txt、およびdoc3.txtを含みます。
少しの出力が表示されます。これは、3つのドキュメント(doc1.txt、doc2.txt、およびdoc3.txt)がアーカイブに追加されたことを示しています。
これをテストするには、アーカイブをダブルクリックします。アーカイブはデスクトップ上にあります。 そうすることで、標準のアーカイブプログラム(KDEのArk、GNOMEのFile Roller、およびXfceのXarchiver)で開くことができます。
それでは、Filesフォルダはどうでしょうか。 それが欲しいと仮定して、その中の文書を私たちのアーカイブにも追加するなら、上と同じコマンドを使用することができますが、コマンドの最後にStuff / Files / *を追加します。
アスタリスクは、フォルダ内のすべてのものを含めることを意味します。 したがって、Filesフォルダ内に別のフォルダがあった場合は、それも追加されているはずです。 ただし、そのフォルダ内にアイテムがある場合、それらは含まれません。 そのためには、 -rを追加する必要があります(これは再帰的または再帰的を表します)。
上記の2つのコマンドは、zipアーカイブにファイルを「追加」するようには設計されていません。 それらはそれを作成するように設計されています。 ただし、アーカイブはすでに存在しているので、このコマンドは新しいファイルを既存のアーカイブに追加するだけです。 このアーカイブを一度に作成したいのであれば(教育目的で徐々にファイルを追加するために実行した3つのステップではなく)、単純にzip -r test Stuff / *と入力して同じアーカイブを作成することもできます。
コマンドと出力から、Stuffフォルダー内の3つのファイルとFilesフォルダー内の3つの文書が含まれていることがわかります。したがって、すべてが簡単でシンプルなコマンドで実行されました。
それでは、デスクトップに作成した2つの「追加の」ドキュメントについてはどうでしょうか。 さて、zipが機能する方法は、アーカイブに既に存在するファイルをアーカイブに追加しようとすると、新しいファイルが古いファイルを上書きすることです。 つまり、デスクトップ上で作成したドキュメント(doc2.txtとdoc3.txt)には内容が含まれているので(「hello world!」をdoc2.txtに、「yay」をdoc3.txtに追加しました)、次のことが可能になります。それらの文書を追加して、これをテストできるようにします。 まず、2つの「追加の」ドキュメントをStuffフォルダにドラッグします。
新しい文書を既存の文書に上書きするかどうかを尋ねられることがありますが(これはフォルダー内にあり、zipアーカイブではないことを忘れないでください)、そのようにします。
これが完了したので、 zip test Stuff / doc2.txt Stuff / doc3.txtと入力してそれらをアーカイブに追加しましょう。
上記のコマンドで、ファイルが追加されずに更新されていることがわかります。 アーカイブをチェックすると、ファイルは同じように見えますが、doc2.txtとdoc3.txtを開くと、元のファイルのように空白になっているのではなく、内容が入っていることがわかります。でした。
Linuxでは、ファイル名の先頭にピリオド( "。")を追加することで一部のファイルが隠されていることがあります。 これは、存在する必要がある設定ファイルでは特に一般的ですが、見えないことが多くあります(混乱しやすくなり、設定ファイルが誤って削除される可能性が少なくなります)。 これらをzipファイルに簡単に追加できます。 まず、ディレクトリ内のすべてのファイルからbackupというzipファイルを作成するとします。 これを行うには、ターミナルにzip backup *と入力します。
これらのフォルダ内のアイテムは含まれませんが、これはすべてのファイルとフォルダを追加します。 それらを追加するには、再度-rを追加して、 zip -r backup *がコマンドになるようにします。
今、私たちはほとんどそこにいます。 フォルダ、ファイル、隠しファイルを再帰的に追加するためのコマンドは、実際には非常に単純です。zip-r backupです。
今、解凍は非常に簡単です。 ただし、作業を始める前に、デスクトップ上のドキュメント(doc2.txtとdoc3.txt)とStuffフォルダを削除してください。 いったんそれらがなくなったら、 unzip test.zipとタイプすると私たちのオリジナルのzipアーカイブの内容があなたの現在のディレクトリに展開されます。
注:ドキュメントを削除していない場合は、zipファイルの内容を既存のファイルに解凍しようとしているので、すべてのドキュメントを置き換える必要があるかどうかを尋ねられます。
以上です! Zipping and Unzippingは非常に一般的な作業です。GUIオプションも利用可能ですが、実際には同じ作業をTerminalから実行することもそれほど難しくありません。