c - 在 C 中使用运算符 < 从文件重定向

标签 c linux bash io-redirection

我写了一个模拟 bash 的程序命令在 Linux 中,在 C 中。 它与来自键盘的输入完美配合,意思是:

  • application > file : 将应用程序的标准输出重定向到文件(将输出写入文件)
  • application < file : 从文件重定向应用程序的标准输入(从文件读取输入)
  • application >> file : 将应用程序的标准输出重定向到文件(将输出附加到文件)
  • app1 | app2 : 将 app1 的标准输出重定向到 app2 的标准输入
  • app & : 表示应用程序应该在后台执行

所有这些工作,当我从键盘输入命令时,如上所述。

为了完成我的任务,我需要再添加一个元素,即 从文件重定向。意思是,如果我的程序被称为 bashSimulator , 然后 如果我这样做:

bashSimulator < fileWithCommands

然后我的程序需要从 fileWithCommands 获取所有命令并处决他们。

我不知道如何从文件进行重定向。

最佳答案

您从标准输入而不是从批处理文件或以交互方式从用户那里读取命令。使用 isatty(3) 来判断是否是这种情况。

关于c - 在 C 中使用运算符 < 从文件重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10860224/

相关文章:

c - umask 和 chmod 意外行为

python - 在 python2.7 上安装 libxml 预构建二进制文件

linux - 无法安装 Vision Workbench

c - 如何连接两个不同字符串中的字母

C - 指向指针的指针问题,似乎看不到

bash - 从所有子目录复制具有特定扩展名的所有文件并保留子目录的结构

python - 这在一个 SSH session 中可能吗? (巴什和 python )

linux - 如何使用 while read line 将文件名打印到文本文件的每一行

c - 累积变量时检测无符号溢出

c - [C]编译openCL程序时 undefined reference