私は初心者Linux
で、現在次のことをやろうとしています。
- wordpress-4.1.1.zipの内容をそのディレクトリ(/my-test-site/wordpress-4.1.1.zip)に解凍します。
私が知っている限り、unzip
ディレクトリからこのコマンドを実行できます。
unzip wordpress-4.1.1.zip
しかし、これはwordpressというサブディレクトリをもたらしました。その後、サブディレクトリに移動して次のコマンドを実行して、ファイルを1つ上のレベルに移動できます。
mv * ../
これにより、my-test-siteディレクトリに必要なすべてのWordPressコアファイルがあります。しかし、unzipコマンドを実行し、ファイルを含むサブディレクトリを作成せずにmy-test-siteディレクトリにコンテンツを直接抽出できるかどうか疑問に思います。
ありがとう
答え1
2つのコマンドラインオプションを使用してunzip
目的の結果を得ることができます。前提は、zipにサブディレクトリが含まれていないことです。。
unzip -j -d /my-test-site wordpress-4.1.1.zip
郵便番号が次のような場合に注意してください。
foo
├── 1
├── 2
├── 3
├── 4
├── 5
├── 6
├── 7
├── 8
├── 9
└── bar
├── 1
├── 2
├── 3
├── 4
├── 5
├── 6
├── 7
├── 8
└── 9
このオプションを有効にすると、に含まれているファイルfoo/bar
に含まれるすべてのファイルが削除されます(その内容を置き換えます)foo
。つまり、この-j
オプションは削除されます。みんなzipのファイルの場所への相対パスで、現在のディレクトリ(デフォルト)またはoptionsで指定されたディレクトリに配置されます-d
。
zipにサブディレクトリがある場合は、zipファイルを抽出する方法が使用されます。
いつでもコマンドのエイリアスを設定できます。
alias wp_unzip='mv wordpress-4.1.1.zip /my-test-site && \
cd /my-test-site && unzip wordpress-4.1.1.zip && \
mv wordpress/* . && rmdir wordpress'