linux中的一个特殊文件: devtcp

linux中的一个特殊文件: devtcp,第1张

linux中的一个特殊文件: /dev/tcp ,打开这个文件就类似于发出了一个socket调用,建立一个socket连接,读写这个文件就相当于在这个socket连接中传输数据。

/dev/[tcp|upd]/host/port 只要读取或者写入这个文件,相当于系统会尝试连接:host 这台机器,对应port端口。如果主机以及端口存在,就建立一个socket 连接。将在,/proc/self/fd目录下面,有对应的文件出现。

以读写方式打开/dev/tcp,并指定服务器名为: www.csdn.net ,端口号为:80,指定描述符为8。

要注意的是:/dev/tcp本身是不存在的。

向文件中随便写一些数据:

GET请求发送给socket连接。

读取返回的信息:

从socket读取返回信息,显示为标准输出

关闭socket的输入,输出

https://blog.csdn.net/zhjutao/article/details/8622751

https://www.cnblogs.com/chengmo/archive/2010/10/22/1858302.html

Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念。\x0d\x0a一. 文件类型\x0d\x0aLinux文件类型常见的有:普通文件、目录文件、字符设备文件和块设备文件、符号链接文件等,现在我们进行一个简要的说明。\x0d\x0a1. 普通文件 \x0d\x0a用 ls -lh 来查看某个文件的属性,可以看到有类似-rwxrwxrwx,值得注意的是第一个符号是 - ,这样的文件在Linux中就\x0d\x0a是普通文件。这些文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... 或 cp工具等。这类文件的删除方式是用\x0d\x0arm 命令。 另外,依照文件的内容,又大略可以分为:\x0d\x0a1>. 纯文本档(ASCII):\x0d\x0a这是Linux系统中最多的一种文件类型,称为纯文本档是因为内容可以直接读到的数据,例如数字、字母等等。 用来做为\x0d\x0a设定的文件都属于这一种文件类型。 \x0d\x0a2>. 二进制文件(binary):\x0d\x0aLinux系统其实仅认识且可以执行二进制文件(binary file)。Linux当中的可执行文件(scripts, 文字型批处理文件不算)就是这种格式的文件。 命令cat就是一个binary file。\x0d\x0a3>. 数据格式文件(data): \x0d\x0a有些程序在运作的过程当中会读取某些特定格式的文件,那些特定格式的文件可以被称为数据文件 (data file)。举例来说,Linux\x0d\x0a在使用者登录时,都会将登录的数据记录在 /var/log/wtmp那个文件内,该文件是一个data file,能够透过last这个指令读出来。 \x0d\x0a2. 目录文件\x0d\x0a在某个目录下执行,看到有类似 drwxr-xr-x ,这样的文件就是目录,目录在Linux是一个比较特殊的文件。注意它的第一个字符是\x0d\x0ad。创建目录的命令可以用 mkdir 命令,或cp命令,cp可以把一个目录复制为另一个目录。删除用rm 或rmdir命令。 \x0d\x0a3. 字符设备或块设备文件 \x0d\x0a进入/dev目录,列一下文件,会看到类似如下的:\x0d\x0aroot@localhost ~]# ls -al /dev/tty\x0d\x0acrw-rw-rw- 1 root tty 5, 0 11-03 15:11 /dev/tty\x0d\x0a[root@localhost ~]# ls -la /dev/sda1\x0d\x0abrw-r----- 1 root disk 8, 1 11-03 07:11 /dev/sda1\x0d\x0a可以看到/dev/tty的属性是 crw-rw-rw- ,注意前面第一个字符是 c ,这表示字符设备文件。比如猫等串口设备。我们看到 /dev/sda1 的属性是 brw-r----- ,注意前面的第一个字符是b,这表示块设备,比如硬盘,光驱等设备。\x0d\x0a这个种类的文件,是用mknode来创建,用rm来删除。目前在最新的Linux发行版本中,一般不用自己来创建设备文件。因为这些文件是和内核相关联的。\x0d\x0a与系统周边及储存等相关的一些文件, 通常都集中在/dev这个目录之下。通常又分为两种:\x0d\x0a区块(block)设备档 :\x0d\x0a就是一些储存数据, 以提供系统随机存取的接口设备,举例来说,硬盘与软盘等就。 可以随机的在硬盘的不同区块读写,这种装置就是成组设备。可以自行查一下/dev/sda看看, 会发现第一个属性为[ b ]。\x0d\x0a字符(character)设备文件:\x0d\x0a亦即是一些串行端口的接口设备, 例如键盘、鼠标等等!这些设备的特色就是一次性读取的,不能够截断输出。\x0d\x0a4. 数据接口文件(sockets): \x0d\x0a数据接口文件(或者:套接口文件),这种类型的文件通常被用在网络上的数据承接了。可以启动一个程序来监听客户端的要求, 而客户端就可以透过这个socket来进行数据的沟通了。第一个属性为 [ s ], 最常在/var/run这个目录中看到这种文件类型了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11475011.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存