问题标签 [dup]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - How can I test STDERR with Test::More?
I am writing some tests using Test::More
, and one of the functions I'm testing prints to STDERR
. I'd like to test the output to STDERR
, but am a little unsure how to do this. I know I'm close. This works:
This prints out:
However, I don't want to close STDERR. I merely want to dup it.
I've tried this:
But, $error_string
is blank.
What am I doing wrong?
d - dup 如何在锯齿状数组上工作?
我希望它只复制嵌套数组切片而不是数组的整个深层副本,但突然间我有了疑问。
c - 我无法将输出从文件重定向回标准输出 C
我浏览了整个互联网和 die.net,但看不到让我的代码工作。我的问题是我能够将输出重定向到文件,但无法将其恢复为标准输出,我尝试使用dup
,dup2
和close
,但也许我使用错误。任何帮助将不胜感激,谢谢
. if(myargc >= 3)
当我尝试重定向输出时,我的问题从块开始。
c - 将文件读取到标准输入以供解析器使用
我正在尝试在 linux 环境中实现一个 shell 程序。我遇到问题的部分是在运行 shell 之前读取 shell 内的 setup_file,以执行诸如设置环境变量之类的操作。
目前,shell 有一个 parser_results = parse() 函数,它执行“getchar”并等待用户在标准输入中键入内容,然后执行 execute(parser_result),它使用解析器的输出执行命令。
我想要做的是读取其中包含命令的 setup_file,让解析器读取它们并给我我需要的数据结构。然后我可以运行执行。
我的问题是如何将文件的内容重定向到标准输入?以及如何调用解析器来解析这个重定向的输入?我一直在玩 dup 和 dup2 无济于事。
c - fork 后的 Unix dup 管道
我想使用管道实现子进程与其父进程之间的通信。这是代码:
父母应该写一个数字 127,孩子应该读它,但它没有。孩子一直在 scanf 等待。怎么了?
linux - Linux shell 中的 I/O 流重定向。shell 如何处理带有重定向的命令?
目前我正在编写一个小外壳(重定向、管道、执行等)。一直试图弄清楚 Linux shell 在解决 I/O 重定向方面采取的步骤。
关于我需要帮助的一些问题:
shell 在寻找重定向时从命令行读取的方向是什么?从左到右还是相反?使用递归?
shell需要查找哪些情况?(不确定是否有很多或只有一对可以包含很多变化)
无论如何,我能想到的一些是(如果我错了,请纠正我):
现在我不知道以下情况的过程(如外壳如何查找和处理这些)。我不知道外壳采取的步骤
c - 重定向到 execlp()
我对 execlp 有疑问。当我不知道如何将命令从指针数组正确重定向到 execlp 时。例如我想使用
我的程序只需要“ls”和“sort”
所有命令都在指针数组中,其中:ls -l
在第一个表中,sort -n
在第二个表中
c - 使用 dup2 和 execv 在 C 中获取文件夹内容
我编写了一个程序,在 Linux 终端中使用 ls 命令来读取文件夹的内容,并使用我的 C 程序将 ls 中的文本写入屏幕。这是我写的代码:
我为这个程序得到的输出是:
似乎在写作之前已经完成了阅读。但我认为阅读是阻塞的。请帮我在这里找到错误。
提前致谢。
c - 带有 fork execvp 管道和 dup2 的 cat
这是我正在做的一组练习中的一个步骤。我编写的程序应该有两个以上的参数。第一个参数的使用尚未实现。其余参数是目录列表。
在这一步中,我要做的是为参数中给定的每个目录创建一个 cat 实例,使用 cat 获取每个目录的所有文件的内容并打印内容。我应该能够处理 /home/directory 和 /home/directory/ 之类的路径(最后一个 / 或没有)
目前我正在做的是尝试使用参数 /home/directory/* 运行 cat ,以便它读取给定目录中的所有文件并返回它们的内容。这是我的代码:
我按如下方式运行此代码:
我得到的结果是:
但是当我这样做时:
结果是:
请帮助我用我的程序得到这个结果。
提前致谢
arrays - 具有多个“DUP”的 x86 数组声明 - 它有什么作用?
我正在研究x86 assembly,我遇到了这个声明:
这个声明有什么作用?
为名为 的数组分配空间
array1
,大小DB * 5 * 2 = 10
为 10 个*
元素。为名为 的数组分配空间
ærray1
,其大小为DB * 5
5 个**
元素。这意味着有 5 个*
元素被丢弃。分配一个名为 的多维数组
array1
,具有大小[5][2]
和 5 个{'*', '*'}
元素。
那么,这个声明是否等同于
char array1[10] = {'*', '*', '*', '*', '*', '*', '*', '*', '*', '*'}
还是相当于
char array1[5] = {'*', '*', '*', '*', '*', '*', '*', '*', '*', '*'}
?
或者可能:
char array1[5][2] = {{'*', '*'}, {'*', '*'}, {'*', '*'}, {'*', '*'}, {'*', '*'}}
?