/var/logから.logで終わるファイルを抽出してアーカイブするときのパス名の削除

/var/logから.logで終わるファイルを抽出してアーカイブするときのパス名の削除

だから私はLinuxに初めてアクセスし、.logで終わる/ var / logの内容をarchiveという名前の新しいディレクトリにあるlog.tarというtarファイルに保存する小さなスクリプトを書いた。次に、tarファイルの内容がリストされ、バックアップと呼ばれる新しいファイルに抽出されたとします。

#!/bin/bash
mkdir archive
mkdir backup
cd archive
tar -cvf log.tar /var/log/*.log
tar -tf tar.log
tar -xf tar.log -C ~/backup

だからスクリプトを実行すると、このような結果が出ます。

tar: Removing leading `/' from member names
/var/log/alternatives.log
/var/log/auth.log
/var/log/bootstrap.log
/var/log/dpkg.log
/var/log/fontconfig.log
/var/log/gpu-manager.log
/var/log/kern.log
/var/log/vboxadd-install.log
/var/log/vboxadd-setup.log
/var/log/Xorg.0.log
var/log/alternatives.log
var/log/auth.log
var/log/bootstrap.log
var/log/dpkg.log
var/log/fontconfig.log
var/log/gpu-manager.log
var/log/kern.log
var/log/vboxadd-install.log
var/log/vboxadd-setup.log
var/log/Xorg.0.log

そのため、アーカイブ時に行の/ var / log /部分を削除できるかどうか疑問に思い、tarファイルの内容を一覧表示するときにこれを得ます。

alternatives.log
auth.log
bootstrap.log
cron.log
dpkg.log
kern.log
mail.log

バックアップファイルでlsを実行すると、varディレクトリが表示され、varディレクトリでlasが実行され、最後にログディレクトリにログファイルが表示されます。それでは、/var/log/パス名とディレクトリなしで抽出する方法は何ですか?

答え1

tar コマンドの /var/log ディレクトリーに存在します。

tar cf /path/archives/yourfile.tar *.log

これにより、ファイルにパスがなくなり、ターゲットファイルはアーカイブディレクトリにあります。

この設定でスクリプトを変更すると、スクリプトを学習してトレーニングできます。

関連情報