Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python module 'os' has no attribute 'mknod'

I want to create a new file in Python for that I am using mknod command, but getting error as:

os.mknod();
AttributeError: module 'os' has no attribute 'mknod'

I am using windows and attributes other than 'mknod' are working.

like image 424
Manthan Sharma Avatar asked Sep 21 '15 09:09

Manthan Sharma


1 Answers

os offers functionality that is closely related to the OS you're using. If most other attributes can be accessed from os (meaning you haven't got a os.py file in the current dir masking the standard module) an AttributeError will 99% signal an unsupported function on your Operating System.

This is what the case is with os.mknod on Windows. Creating named pipes in Windows has, as far as I can understand, very different semantics.

Either way, if you are trying to use mknod to create named pipes you'd probably be better using mkfifo() (again, only Unix supported) . If you're using it to create ordinary files, don't, use open() which is portable.

like image 149
Dimitris Fasarakis Hilliard Avatar answered Oct 19 '22 00:10

Dimitris Fasarakis Hilliard