tôi đã sử dụng distutils để cài đặt gói python của tôi, với setup.py này:Làm thế nào để chạy tập lệnh python đã cài đặt?
import distutils.core
args = {
'name' : 'plugh',
'version' : '1.0',
'scripts' : [ "scripts/plugh" ],
'packages': [ "plugh" ],
}
d = distutils.core.setup(
**args
)
Trên Linux/mac, nó hoạt động như mong đợi:
% plugh
hello world
%
Trên cửa sổ, kịch bản "plugh" làm không chạy:
C:\Python25\Scripts>plugh
'plugh' is not recognized as an internal or external command,
operable program or batch file.
C:\Python25\Scripts>
tôi thấy báo cáo lỗi tại http://bugs.python.org/issue7231 rằng thư mục \ Scripts không được thêm vào PATH khi bạn cài đặt python, vì vậy tôi đã áp dụng workaround d được ghi trong vé đó (tức là thêm C: \ Python25 \ Scripts to PATH)
C:\Python25\Scripts>path
PATH=c:\Python25\Scripts;C:\Program Files\Legato\nsr\bin;C:\WINDOWS\system32;C:\
WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\QuickTime\QTSystem\;c:\python2
5;c:\local;C:\WINDOWS\system32\WindowsPowerShell\v1.0
Đây có phải là thứ không hoạt động trên Windows không? Và nếu vậy, làm thế nào chính xác là bạn có nghĩa vụ phải sử dụng kịch bản python trên một cửa sổ máy?
Tôi cho rằng tôi có thể phát hiện Windows, và thêm một kịch bản thêm vào danh sách, được gọi là "plugh.bat" có chứa một cái gì đó như:
@echo off
c:\python25\python.exec c:\python25\scripts\plugh %1 %2 %3 %4 %5 %6 %7 %8 %9
nhưng là thực sự là câu trả lời đúng ở đây? Tôi đã nghĩ rằng với tất cả các tùy chỉnh mà các méo có chứa cho các cửa sổ, sẽ có một câu trả lời tốt hơn thế.
BTW, chuỗi tham số% 1% 2% 3% 4% 5% 6% 7% 8% 9 có thể được thay thế bằng% * nếu bạn chỉ cần chuyển tất cả đầu vào hàng loạt sang kịch bản pyhton (hoặc bất kỳ thực thi khác). – dreikanter