2016-11-11 149 views
0

首先,它在我的工作計算機上工作,但不能在我的家用臺式機上工作。其次,我已經探索了幾個以前的答案,沒有運氣。也許我只是沒有閱讀過我的解決方案。python無法打開文件... [錯誤2]沒有這樣的文件或目錄

我想從任何地方運行一個可執行的python腳本(它需要一個字符串參數)。我的解決辦法是在.bashrc中使用一個bash別名:

我嘗試了好幾種變體:

alias tlog="~/projects/tlog/tlog.py" 
alias tlog="/c/cyg/home/<my_username>/projects/tlog/tlog.py" 
alias tlog="C:\\cyg\\home\\<my_username>\\projects\\tlog\\tlog.py" 
alias tlog='"/c/cyg/home/<my_username>/projects/tlog/tlog.py"' 
alias tlog='"C:\\cyg\\home\\<my_username>\\projects\\tlog\\tlog.py"' 
alias tlog="python ~/projects/tlog/tlog.py" 

他們沒有工作,在各自的輸出:

C:\Python27\python.exe: can't open file '/home/<my_username>/projects/tlog/tlog.py': [Errno 2] No such file or directory 
C:\Python27\python.exe: can't open file '/c/cyg/home/<my_username>/projects/tlog/tlog.py': [Errno 2] No such file or directory 
bash: C:cyghome<my_username>projectstlogtlog.py: command not found 
C:\Python27\python.exe: can't open file '/c/cyg/home/<my_username>/projects/tlog/tlog.py': [Errno 2] No such file or directory 
bash: C:\cyg\home\<my_username>\projects\tlog\tlog.py: command not found 
C:\Python27\python.exe: can't open file '/home/<my_username>/projects/tlog/tlog.py': [Errno 2] No such file or directory 

所以對於一個理智檢查,我這樣做:

$ cd ~/projects/tlog 
$ ls 
logs prev_log_date tlog.py 

是的,它在那裏......它運行嗎?

$ ./tlog.py "TEST" 
yadda yadda it worked 

沒錯,所以現在:

$ ~/projects/tlog/tlog.py "TEST" 
C:\Python27\python.exe: can't open file '/home/<my_username>/projects/tlog/tlog.py': [Errno 2] No such file or directory 

嗯...大概

$ more ~/projects/tlog/tlog.py 
#!/usr/bin/env python 
""" 
tlog - tlog docstring 
""" 
...rest of file... 

是的,這就是仍然存在。任何人都得到了我的答案? 參考:

$ ls -la 
...more files... 
-rwxrwxr-x+ 1 <my_username> <my_username> 6376 Nov 10 17:59 tlog.py 
$ cd .. 
$ ls -la 
...more files... 
drwxr-xr-x+ 1 <my_username> <my_username> 0 Nov 10 17:59 tlog 
$ python --version 
Python 2.7.10 
+0

我不確定你的別名有什麼問題,但你可以將它添加到你的路徑。 'PATH = $ PATH:$ HOME /項目/ tlog' – chicks

回答

1

看起來像您使用基於Windows的蟒蛇

檢查cygwin的python的安裝

ls /bin/python* 

如果你沒有cygwin的蟒蛇,沒有Cygwin的基於Python,安裝。

如果你已經安裝了cygwin python,那麼檢查你的PATH變量 - cygwin/bin /文件夾必須在windows python文件夾之前。

如果你真的需要使用Windows Python從Cygwin的......「從cygwin的窗口蟒蛇」讀了很多有關 - 有噸的毛刺,特殊情況和不可預知的行爲

另外,你可以嘗試這樣的別名:(不能自己檢查)

alias tlog="cmd.exe C:\\Python27\\python.exe -i C:\\cyg\\home\\<my_username>\\projects\\tlog\\tlog.py" 
相關問題