スペックファイルがあります。システム上の1行のファイルから値を取得するスペック変数を%defineする必要があります。
例えば
%define path `cat /home/user/path_file`
そしてpath_fileには1行です
/var/www/html/hosts
これは部分的に機能します。 RPM BUILD出力で始まると言いますが、${path}
の値は文字どおり私のコマンドcat /home/user/path_file
である場合があり、値は必要に応じてpath_file(/ var/www/html/hosts)の行である場合があります?
スペックファイルの先頭にある%(cmd)
を使用して、rpmbuild変数を定義できます。コマンドが中括弧ではなく括弧内にあることに注意してください。例:
%define whoami %(whoami)
そして、スクリプトやビルド/インストールセクションなどのスペックファイルの他の場所では、次のように中かっこ内で通常どおり変数を使用します。
echo "The user that built this is %{whoami}"
cmd
は、catコマンドを含め、何でもかまいません。注意してください-別のユーザーがスペックファイルを再構築すると、ファイルが見つからない場合があります。したがって、次のように%{sourcedir}マクロを使用することをお勧めします。
%define path %(cat %{sourcedir}/path_file)
そして、path_file
はソースディレクトリにあり、スペックファイルにソースとして含まれています。