Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.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
Bash 在具有文件输入和文件输出的终端中运行程序,并限制输出大小_Bash_Io Redirection - Fatal编程技术网

Bash 在具有文件输入和文件输出的终端中运行程序,并限制输出大小

Bash 在具有文件输入和文件输出的终端中运行程序,并限制输出大小,bash,io-redirection,Bash,Io Redirection,我试图在终端中运行一个可执行文件,它是用g++编译的,具有单独的输入和输出文件/流。但是我想对输出设置一个限制,当输出文件达到特定的行数限制时,程序应该停止。我在bash中看到了head命令的使用 ./a.out | head --lines 100 <input.txt >output.txt /a.out | head--line 100 output.txt 但当执行时,它从input.txt文件中获取输入并截断100行并将它们打印到output.txt文件中。但我想让它做

我试图在终端中运行一个可执行文件,它是用g++编译的,具有单独的输入和输出文件/流。但是我想对输出设置一个限制,当输出文件达到特定的行数限制时,程序应该停止。我在bash中看到了head命令的使用

./a.out | head --lines 100 <input.txt >output.txt
/a.out | head--line 100 output.txt
但当执行时,它从input.txt文件中获取输入并截断100行并将它们打印到output.txt文件中。但我想让它做的是,运行a.out可执行文件,从input.txt文件获取输入,然后将结果打印到output.txt文件。我怎样才能做到这一点

但我想让它做的是,运行a.out可执行文件,从input.txt文件获取输入,然后将结果打印到output.txt文件

重定向的正确用法是:

./a.out <input.txt | head --lines 100 >output.txt
/a.out output.txt

谢谢,成功了。我只是想知道,有没有办法用字符数来代替行数?@Sajid是的,
head-n100
代表100行,而
head-c100
代表100个字符