Tar コマンドは、BASH スクリプトで実行した場合と手動で実行したときに若干異なる出力を提供します。

Tar コマンドは、BASH スクリプトで実行した場合と手動で実行したときに若干異なる出力を提供します。

次のスクリプトを実行しようとしています。


    #!/bin/sh
    pm2 stop process
    
    cd ~/userdata/
    
    tar -czvf backup.tar.gz Config
    
    mv backup.* ~/backups/
    
    pm2 start process

スクリプトの実行時にbackup.tar.gz出力ファイルは空のディレクトリを除外しますが、コマンドラインからtarコマンドを手動で実行すると、そのディレクトリが含まれます。私はスクリプトが空であるかどうかに関係なく、すべてのファイルとサブディレクトリを含めたいと思います。

編集する:

を使用すると、tar --version次の結果が表示されます。 script を使用して作成したアーカイブには空のtar (GNU tar) 1.34 Copyright (C) 2021 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by John Gilmore and Jay Fenlason. ディレクトリは存在せず、手動コマンドを使用して作成したアーカイブで実行すると、そのディレクトリが含まれます。tar -tvf

ベストアンサー1

おすすめ記事