我只是想知道在系统编程中使用shell脚本是否是一种很好的编程习惯。
我是系统编程的新手,正在尝试找出在给定系统上发现打印机并显示结果的最佳方法。
我能想到的最简单的方法是运行一个exec命令来运行一个shell脚本,该脚本将使用
列出打印机 lpstat -a > printers.txt
然后解析文件printers.txt
,显示信息,然后在完成后删除文件。
答案 0 :(得分:3)
您是否正在使用其他语言在代码中运行shell脚本?在这种情况下,使用shell脚本几乎肯定是不必要的。
几乎所有语言都允许您运行任意命令并捕获输出。例如,C和朋友有popen()
和Perl,Ruby等有反引号(`lpstat -a`
以字符串形式返回该命令的输出)。这种方法使得没有必要使用额外的shell脚本或作为临时文件。
答案 1 :(得分:1)
最好使用脚本或使用编译语言。您可以使用Bash,Python或Perl实现此任务。混合语言也没问题,但这会使代码变得不必要,因此您需要一个很好的理由。