2015-04-21 121 views
1

我在桌面上創建了一個python腳本的快捷方式。如何用windows命令行和參數打開快捷方式

現在我想用命令行和參數打開它。

如果我打開快捷方式的屬性,我可以添加參數,但我不能強制用命令行打開。

這些文件的默認程序是notepad ++,但是如果我將它更改爲「命令行」並雙擊它,那麼僅打開命令行,並顯示快捷方式中給出的相應路徑,但不執行該文件。

我需要做什麼?

+1

.py和.pyw腳本不應該主要與編輯器相關聯。所以首先要修復關聯,以使用Python安裝程序創建的'Python.File'和'Python.NoConFile'類型。 – eryksun

回答

0

更改快捷方式的目標,以「CMD文件名」(即新增目標之前「CMD」)

+0

我相信你是在'cmd/k文件名'之後。 '/ k'選項在'filename'退出後保持shell運行。這樣控制檯窗口不會自動關閉。但是,如果文件類型關聯是錯誤的,除非OP使用諸如'cmd.exe/k「」C:\ Python27 \ python.exe「」C:\ ... \ path \ run .py「參數」'。如果您不希望控制檯窗口保持打開狀態,請使用'/ c'而不是'/ k'。 – eryksun

+0

你的意思是「cmd C:\ ..... \ path \ run.py參數」?那沒用... ... :( – Creatronik

0

我想知道如何做題說,正是「如何打開與Windows命令行參數的快捷方式」。

我的意思是:

  • 在命令行中運行一個快捷方式,並傳遞參數給它

那快捷方式指向一個批處理文件,並設置上打鉤的奔跑與管理員權限。是的,快捷方式將參數傳遞給它們指向的應用程序/批處理,因此不需要在LNK上自行添加參數...最糟糕的是參數是可變的,並且如果將任何參數放在LNK上,則它將被視爲文字...如果LNK具有某些參數,START上的參數將添加到LNK之後(測試)。

該批處理文件(用於測試)可以如此簡單:

@ECHO OFF 
ECHO Parameter 1 is: %1 
PAUSE 

如果我運行的.lnk(快捷方式)啓動它發生的兩件事情:

  1. 它運行批處理文件,如果參數不包含"
  2. ,它甚至沒有運行該批處理文件,如果參數包含"

那麼如何傳遞一個有空格的參數呢?就像一個路徑,文件名等

我不想使用該選項來設置一個變量如果看不到,也不保存在文件參數等

其實我滿資質開始嘗試另一批內部命令:

@ECHO OFF 
ECHO DeBug - start- 
start "Some Title Is Requiered, can be empty" /D "Starting Path" /WAIT "Full Path to the LNK file.lnk" %1 
ECHO DeBug - stop- 
PAUSE 

這樣的.lnk指向樣品批次(具有PAUSE就可以了)。

如果我使用不帶空格的參數調用Batch並且沒有引號,它可以很好地工作,但只要參數包含空格或引號,快捷方式指向的批處理不會運行(但所有情況下都會顯示管理權限問題,當然我在所有情況下都按Yes)。

相關問題