Tôi có một ứng dụng MS Windows cần phiên bản Wine mới. Tôi đã cài đặt nó cục bộ vào thư mục chính bằng PlayOnLinux.
Tôi gặp khó khăn với việc tạo tập lệnh bash/dash/sh đơn giản để khởi chạy ứng dụng .exe bên trong thư mục của nó. Tôi đã thử tiêu chuẩn pushd/popd
, cd && exec
, (cd && exec)
tiếp cận nhưng nó không thành công.
Tôi cân gi:
Hiện tại tôi hài lòng với mã Python sau đây cho tập lệnh bao bọc (được đặt trong /usr/local/bin/wine32-wrapper):
#!/usr/bin/python3
nhập hệ điều hành
nhập khẩu hệ thống
quy trình con nhập khẩu
nếu len(sys.argv) >= 2:
đường dẫn = sys.argv[1]
wd = os.path.dirname(đường dẫn)
exec_path = ["/home/{}/.PlayOnLinux/wine/linux-x86/6.15/bin/wine".format(os.getenv('USER'), đường dẫn), "{}".format(đường dẫn)]
p = sub process.run(exec_path, cwd=wd)
khác:
print("\nUsage {} với một đối số - đường dẫn tệp đầy đủ.".format(sys.argv[0]));
và .desktop-file (được đặt trong ~/.local/share/applications/wine32.desktop), cho nó:
#!/usr/bin/env xdg-open
[Mục nhập máy tính để bàn]
Phiên bản=1.0
Loại=Ứng dụng
Thiết bị đầu cuối = sai
Icon=mate-panel-launcher
Exec=wine32-wrapper %f
Tên=Rượu địa phương32-6.15
sau đó tôi liên kết các tệp exe của mình với tập lệnh rượu này bằng Caja.
Có thể thay thế tập lệnh python ở trên bằng tập lệnh bash/dash/sh có cùng chức năng không?