python os.open在打开目录时的用法
我有这个:python os.open在打开目录时的用法,python,Python,我有这个: drwxr-xr-x 8 abc root 4096 Dec 21 19:56 javaprac 这项工作: >>> fd = os.open(os.getcwd() , os.O_RDONLY) 但为什么这两个都失败了: >>> fd = os.open(os.getcwd() , os.O_RDWR) Traceback (most recent call last): File "<stdin>", line 1, in
drwxr-xr-x 8 abc root 4096 Dec 21 19:56 javaprac
这项工作:
>>> fd = os.open(os.getcwd() , os.O_RDONLY)
但为什么这两个都失败了:
>>> fd = os.open(os.getcwd() , os.O_RDWR)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [Errno 21] Is a directory: '/home/abc/javaprac'
>>> fd = os.open(os.getcwd() , os.O_WRONLY)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [Errno 21] Is a directory: '/home/abc/javaprac'
fd=os.open(os.getcwd(),os.O_RDWR)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
OSError:[Errno 21]是一个目录:'/home/abc/javaprac'
>>>fd=os.open(os.getcwd(),仅限os.O_)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
OSError:[Errno 21]是一个目录:'/home/abc/javaprac'
至少在Linux上,您不能写入目录
$ echo hello >> .
bash: .: Is a directory
您可以从目录中读取ls和dir命令的功能。为什么要直接写入目录节点?你想在这里做什么?@MartijnPieters我的问题简单而直接,没有更深的含义:为什么我不能这样写一个目录?为什么这种行为是这样的?