本地套接字
作用:用于本地不同的程序间进行通信
创建流程
- 创建本地套接字
sockfd = socket(AF_UNIX, SOCK_STREAM) ##AF_INET:网络套接字地址族 - 绑定本地套接字文件
选定文件位置和名称
sockfd.bind(path) - 监听
listen() - 消息收发 recv send
cookie
os.path.exists(path)
判断一个文件是否存在
参数:文件名
存在返回True
否则返回False
os.remove()
os.unlink()
参数:文件名
删除文件
unix_recv.py
from socket import *
import os
#确定套接字文件
sock_file = './sock_file'
#判断文件是否已经存在
if os.path.exists(sock_file):
os.remove(sock_file)
#创建本地套接字
sockfd = socket(AF_UNIX,SOCK_STREAM)
#绑定套接字文件
sockfd.bind(sock_file)
#监听
sockfd.listen(3)
#消息收发,与网络流式套接字一致
pass
unix_send.py
from socket import *
#确保通信两端用的是同一个套接字文件
sockfd = socket(AF_UNIX, SOCK_STREAM)
#连接另一端
sockfd.connect(sock_file)
#收发消息
pass
tarena@tedu:~/pythonnet/day4$ ls -l sock_file
srwxrwxr-x 1 tarena tarena 0 9月 10 10:30 sock_file
s
套接字文件, 大小为0,实际上存在于内存中,而不在硬盘