Tôi đã hỏi về Stack Overflow, nhưng đây có vẻ là một vấn đề cụ thể đối với Mac OS X vì lỗi không xảy ra trên các HĐH khác (ví dụ như ubfox).
https://stackoverflow.com/q/42637680/447830 lặp lại dưới đây:
Vì thế. Tôi sở hữu tệp có tên ~ / .osc_history, như hiển thị bên dưới:
$ w
17:53 up 3:15, 5 users, load averages: 1.30 1.17 1.10
USER TTY FROM LOGIN@ IDLE WHAT
kyma console - 14:39 3:14 -
kyma s001 - 17:20 - w
$ ls -l ~/.osc_history
-rw-r--r-- 1 kyma staff 13 Mar 6 17:41 /Users/kyma/.osc_history
$ ls -lO ~/.osc_history
-rw-r--r-- 1 kyma staff - 13 Mar 6 17:41 /Users/kyma/.osc_history
Tiêu đề trong tệp là chính xác:
$ cat ~/.osc_history
_HiStOrY_V2_
Từ dấu nhắc tương tác, đoạn mã sau chạy tốt:
$ python
Python 2.7.10 (default, Jul 30 2016, 19:40:32)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os.path
>>> import readline
>>> histfile = os.path.join(os.path.expanduser("~"), ".osc_history")
>>> histfile
'/Users/kyma/.osc_history'
>>> readline.read_history_file(histfile)
>>> ^D
Tuy nhiên, khi tôi cố chạy phần sau, cái mà tôi đã gọi là "yeuch.py" ...
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import readline # Command line history
import os.path
histfile = os.path.join(os.path.expanduser("~"), ".osc_history")
if not os.path.isfile(histfile): # If there's no history file...
empty = open(histfile, "a") # ... create an ALMOST empty one...
empty.write("_HiStOrY_V2_\n") # ... with the special header line
empty.close()
readline.read_history_file(histfile) # Read history from previous sessions
readline.set_history_length(1000) # Default length was -1 (infinite)
...Tôi hiểu rồi:
$ python yeuch.py
Traceback (most recent call last):
File "yeuch.py", line 14, in <module>
readline.read_history_file(histfile) # Read history from previous sessions
IOError: [Errno 1] Operation not permitted
Cái quái gì đang diễn ra vậy? .
Cảm ơn đã liên kết đến các trang web khác. Đây có vẻ là một câu hỏi thú vị. Tôi mong đợi học hỏi từ những nỗ lực để trả lời và / hoặc một câu trả lời đúng.
—
bmike