Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何在安装过程中获取用户输入_Linux_Bash_Rpm_Rpmbuild - Fatal编程技术网

Linux 如何在安装过程中获取用户输入

Linux 如何在安装过程中获取用户输入,linux,bash,rpm,rpmbuild,Linux,Bash,Rpm,Rpmbuild,因此,当我创建一个debian包时,我能够编写一个运行良好的安装后shell脚本。目前我的配置为 echo "Please enter your MySQL Database user (default root)" read MYSQL_USER echo "Please enter the MySQL Database user password (default root)" read -s MYSQL_PASS DBEXIST=0 CMD="create dat

因此,当我创建一个debian包时,我能够编写一个运行良好的安装后shell脚本。目前我的配置为

  echo "Please enter your MySQL Database user (default root)"
  read MYSQL_USER
  echo "Please enter the MySQL Database user password (default root)"
  read -s MYSQL_PASS

DBEXIST=0    
CMD="create database lportal;use lportal;"
(mysql -u$MYSQL_USER -p$MYSQL_PASS -e "$CMD") || ((DBEXIST++))
if [ $DBEXIST -ne 0 ]; then
  echo "Setup finished, but MySQL already has an lportal table. This could be from a previous installation of Liferay. If you want a fresh installation of this bundle, please remove the lportal table and reinstall this package."
fi
这对Ubuntu很好。然而,我似乎无法让用户输入与Fedora的RPM一起工作。有没有一个好的方法来获取用户输入?据我所知,RPM的设计不允许交互式安装。但是我找不到更好的方法


是否有一种方法可以在不询问用户的情况下自动查找本地MySQL设置?否则,请求用户输入的最佳方式是什么?

好的,我已经解决了这个问题,但没有真正的答案——基本上根据我的理解,我有两个选择——一个是像Bind或CUPS这样的包装器脚本。这被认为是不好的包装做法,虽然,我仍然不知道如何去做它。更好的方法是在%POST脚本中指定默认值,并创建firstrun标志。用户第一次启动软件时,它会提示进行配置设置。

好的,我已经解决了这个问题,但没有给出真正的答案——基本上根据我的理解,我有两个选择——一个是像Bind或CUPS这样的包装器脚本。这被认为是不好的包装做法,虽然,我仍然不知道如何去做它。更好的方法是在%POST脚本中指定默认值,并创建firstrun标志。用户第一次启动软件时,会提示进行配置设置。

在Debian中,您应该使用
debconf
来配置软件包。谢谢el.pescado,我正在阅读debconf-devel的手册页。我意识到我为ubuntu做的有点错误,哈哈。那么,Fedora是否有一个等价物呢?在Debian中,您应该使用
debconf
来配置您的包。谢谢el.pescado,我正在阅读debconf-devel的手册页。我意识到我为ubuntu做的有点错误,哈哈。那么,软呢帽有没有等效物呢?