【问题标题】:Creating commands and executing them through linux terminal通过 linux 终端创建命令并执行它们
【发布时间】:2013-08-13 07:35:53
【问题描述】:

我参加了诸如 codechef 之类的竞争性编程竞赛。所以他们以特定格式接受输入。我正在寻找用 C++ 开发测试仪。我打算做的一些事情是:

  • 在文件 format.txt 中给出输入格式。
  • 给出输出已知的示例输入测试用例。
  • 在测试用例上测试程序 (ii) 并在单独的文件中生成输出。
  • 按照 format.txt 中指定的格式在多个测试用例上随机测试程序,并在单独的文件中生成输出。

做完这一切之后,我想要一个命令来代表以上所有的操作。如何在 linux 终端中引入新命令(例如 test_codechef sample_program.cpp,其中新命令在 sample_program.txt 上执行我的测试器)?

【问题讨论】:

  • 也许写一个 bash 脚本?
  • 我希望困难的部分是输入和已知输出的情况。一个 bash 脚本或一些 python 或类似的东西将是运行代码并比较输出的正确方法。
  • @MatsPetersson 基本上我正在指定输入可能位于的格式和范围......基本上我在谈论一种迷你语言。就已知输出而言,它们通常在问题本身中指定为样本输入和输出。我想我可以将它们通过管道传输到输出文件。
  • @Lake bash 脚本对我来说完全陌生。目前我已经忙于很多其他的事情,尤其是算法。这个任务可以用 bash 脚本轻松完成吗?
  • @sudeepdino008 如果你想为 Linux 开发,学习你想使用的 shell 的脚本语言当然是个好主意(bash 是大多数大型发行版中的默认语言)。跨度>

标签: c++ linux shell command-line


【解决方案1】:

我想你想向终端添加一个命令并使用它,如果你在谈论 Bash,那么只需创建一个没有类型的文件 bash 文件示例:

#!/bin/bash 
echo "Hello World "

保存:HelloWorld

之后:

chmod +x HelloWorld
cp HelloWorld /usr/bin/

然后在终端上输入:HelloWorld,结果是 Hello World , 所以如果我说得对,你需要学习一些关于 Bash Linux 的东西

【讨论】:

  • 将自己创建的二进制文件与/usr/bin 中的操作系统开发人员提供的二进制文件混合通常被认为是不好的做法——想想操作系统升级/补丁。一般使用/usr/local/bin 或者最好还是$HOME/bin
猜你喜欢
  • 2011-10-31
  • 2011-05-09
  • 1970-01-01
  • 2019-05-04
  • 1970-01-01
  • 2014-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多