卡卷网
当前位置:卡卷网 / 每日看点 / 正文

Linux中“一切皆文件”是什么意思?

作者:卡卷网发布时间:2024-12-29 14:21浏览数量:79次评论数量:0次

Linux里面按下大写键盘怎么通过命令实现?

按数字键怎么用命令实现?

用下面的命令:

Linux中“一切皆文件”是什么意思?  第1张

写一个1就是打开数字键,那个键亮了!

写回0就数字键灭了。

果然一切皆文件!

接着,你打开一个终端输入tty.

Linux中“一切皆文件”是什么意思?  第2张

怎么不操作这个终端在这个终端上显示hello呢?


答案是写文件;

#include <stdio.h> #include <fcntl.h> #include <unistd.h> int main() { int fd; // 打开 /dev/tty 设备文件 fd = open("/dev/pts/5", O_WRONLY); if (fd < 0) { perror("Failed to open /dev/tty0"); return 1; } // 写入 "hello" 到 /dev/tty if (write(fd, "hello\n", 6) < 0) { perror("Failed to write to /dev/tty0"); close(fd); return 1; } // 关闭文件描述符 close(fd); return 0; }



新打开一个终端编译运行:

Linux中“一切皆文件”是什么意思?  第3张

输出:



Linux中“一切皆文件”是什么意思?  第4张

如果是fd = open("/dev/tty", O_WRONLY);就默认输出在编译的终端上。


哈哈,这个才是一个好视角,理解 everything is a file in linux

打印就是写数据

还学习了 write系统调用的用法。

还学习了 file descriptor fd.


突发奇想,改代码》 打开2次 /dev/pts/5

打印fd, 并打印返回值

Linux中“一切皆文件”是什么意思?  第5张


输出

Linux中“一切皆文件”是什么意思?  第6张

果然和书上的理论一样,文件描述符0 1 2 分别是标准读 标准写和 标准错误,

打开文件开始的是3 再打开就是4 了。

echo $? 输出函数返回值,之前是0, return 10 返回10

END

免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。

卡卷网

卡卷网 主页 联系他吧

请记住:卡卷网 Www.Kajuan.Net

欢迎 发表评论:

请填写验证码