エラーメッセージをグーグルで検索したところ、BSD tar 対 GNU tar
のようです 問題。
GNU tar
をインストール Mac OS で可能であれば、それを使用して tar
を作成します .
Mavericks 以降を使用している場合、gnutar はデフォルトで含まれなくなりました。
自作を使用する場合の回避策は、次を実行することです:
brew install gnu-tar
その後、コマンド gtar
を使用できます Linux との互換性のため。
tar
を置き換えたい場合 gtar
で 、単にシンボリックリンクを置き換えます
tar --version
ll `which tar`
sudo unlink `which tar`
sudo ln -s `which gtar` /usr/bin/tar
tar --version
Mac Os X で提供される元の tar を復元するには、上記のコマンドを実行しますが、which gtar
を置き換えます which bsdtar
で
ソース:
https://github.com/jordansissel/fpm/issues/576
GNU tar は、デフォルトの OSX BSD tar に含まれるオプション情報の一部を好みません。
GNU tar では、次のオプションを使用してこれらの警告を抑制できます:
--warning=no-unknown-keyword
参照:https://www.gnu.org/software/tar/manual/html_section/tar_27.html
BSD tar はそのフラグをサポートしていないので、すべてのプラットフォームで同じ解凍コードを実行する必要がある場合は、次のようなものを使用できます:
isGnuTar=$(tar --version | grep -q 'gnu')
if [ $? -eq 0 ]
then
echo "Detected GNU tar"
tar --warning=no-unknown-keyword -zxf my.tar.gz
else
tar -zxf my.tar.gz
fi