Bash出力で変数を保存する

Bash出力で変数を保存する

一部のファイルのバックアップを生成するbashスクリプトがCronに設定されています。

bashコマンド(出力を含む)は次のとおりです。

[vagrant@localCentOS71 ~]$ sudo create_backup.sh
Check if all is good ...
done
Doing it ..
Backup file is: 1482419092_backup.tar ... Yeah!
done

1482419092_backup.tar同じシェルコマンドで後で使用するために変数に保存する方法 。

目的は、作成したばかりのバックアップファイルのフォルダへのシェルコマンドのシンボリックリンクを作成することです。

これまで私は以下を持っています:

create_backup.sh && ln -s $BACKUP_FILE /folder/here

ベストアンサー1

スクリプトを編集する方がはるかに簡単かもしれませんが、これが不可能な場合は、次のようにすることができます。

BACKUP_FILE=$(create_backup.sh | grep -oP 'Backup file is:\s*\K\S+') && 
ln -s $BACKUP_FILE /folder/here

おすすめ記事