linux - 从另一个函数打印

标签 linux bash function shell variables

为了节省代码行的空间,我需要构建一个函数来打印出另一个函数提供的信息,例如:

# (1-1) Install APP
function installapp {
  echo "APP description goes here."
  echo "Installing..."
  xterm -e apt-get install app
  echo "APP Was Successfully Installed"
  echo "Run APP From The Menu"
  echo "Press Enter To Return To Menu"
  read input
}

我想知道的是如何将它变成这样的东西:

# (1-1) Install APP
function installapp {
  echo "APP description goes here."
  echo "Installing..."
  xterm -e apt-get install app
  echo -e "$done(APP)"
  read input
}

$done() 函数包含上面引用的所有结束信息。

最佳答案

你在找这样的东西吗?

installdone () {
    echo "$1 Was Successfully Installed"
    echo "Run $1 From The Menu"
    echo "Press Enter To Return To Menu"
}
installapp () {
      echo "APP description goes here."
      echo "Installing..."
      xterm -e apt-get install app
      installdone APP
      read input
 }

注意对 POSIX 兼容函数声明的偏好(没有 function 关键字,这是一个相当无用的 Bashism)并且不需要说 echo "$(installdone APP)" 当函数自行打印时一切正常。

如果这是我的程序,我还会将 read input 放在 done 函数中(或者可能完全忽略它;为什么有人想要 那个?)或者可能更彻底地重构它,以达到可以完全禁用诊断喋喋不休的地步。

关于linux - 从另一个函数打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49707474/

相关文章:

c++ - OpenCV 虹膜检测 C++

linux - 创建一个使用 cat 并具有 3 个参数的简单 bash 脚本

linux - 避免 bash 脚本等待用户输入 Enter 键

linux - 如何删除文本文件中带有模式的单词

python - 在 Python 类中声明变量在哪里更好?

c - 请推荐一个好的D-Bus教程(Linux C GTK+)

c - 适用于应用程序的可移植 Linux 环境

bash - 如何使用 Bash 将标准输出和标准错误重定向并 append 到文件中

MySQL 5.0 报告 "concat does not exist"

php - 计算时差 (PHP)