这个shell命令有什么作用?
发布时间:2020-12-15 21:22:45 所属栏目:安全 来源:网络整理
导读:我正在用另一种语言重写GNU的wc实用程序,我遇到了这个命令,它应该导致wc输出0字节计数. (dd ibs = 99k skip = 1 count = 0; ./wc -c)的/ etc /组 正如我目前所理解的那样,dd是在一个单独的(子)shell中启动的,然后启动wc,然后将/ etc / group的内容重定向到sh
我正在用另一种语言重写GNU的wc实用程序,我遇到了这个命令,它应该导致wc输出0字节计数.
(dd ibs = 99k skip = 1 count = 0; ./wc -c)<的/ etc /组 正如我目前所理解的那样,dd是在一个单独的(子)shell中启动的,然后启动wc,然后将/ etc / group的内容重定向到shell中? dd命令使用99kB的输入块大小并在读取输入之前跳过其中一个?这就是我被绊倒的地方. 现在我的版本报告?980字节读取,所以我想更好地理解这个命令,所以我的实用程序可以反映出来. 解决方法
该命令(dd ibs = 99k skip = 1 count = 0; ./wc -c)< / etc / group生成一个子shell(用于(list))并将/ etc / group附加到该子shell标准输入. 在该子shell中运行dd命令(并继承子shell的标准输入),输入块大小为99k,跳过计数为1,块的复制计数为0.这将导致dd寻求99k进入其标准输入流和停止.完成后,然后运行wc(并继承子shell的标准输入)并报告要读取的流中剩余的字符数(对于除了巨大的组之外的所有文件都没有任何内容). 你的wc实现是否正在寻找文件句柄的开头?
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |