最上位ディレクトリを使用せずに解凍

最上位ディレクトリを使用せずに解凍

「htdocs」で始まる複数のDrupalウェブサイトを含むtar(websites.tgz)があります。

解凍する必要があります。

/local/htdocs/web1
/local/htdocs/web2

など。しかし、権限の問題のため、website.tgzファイルを/ localに配置して下に抽出することはできません。現在私のホームディレクトリにあります。トップレベルのhtdocsディレクトリを含まずに/local/htdocsの下のコンテンツを抽出する方法は?

私は以下を避けようとしています:

/local/htdocs/htdocs/web1
/local/htdocs/htdocs/web2.

助けてくれてありがとう。

答え1

-C一部のtar実装では、このオプションを使用して抽出のデフォルトパスを指定できます。以下はあなたの例に適用されます。

tar -xvz -C /local -f websites.tgz

またはorオプションがtarない場合:-z-C

gunzip < websites.tgz | (cd /local && tar xvf -)

答え2

GNU tar の --strip-comComponents=NUMBER オプションを使用できます。

--strip-components=NUMBER
  strip NUMBER leading components from file names on extraction

あなたのコマンドは次のとおりです

tar -xfz /path/to/websites.tgz --strip-components=1 -C /local/htdocs/

関連情報