VSCODE如何在終端中使用Linux風格的路徑或者是相對路徑?

最近開始使用Visual Studio Code進行一些簡單的Python腳本編寫。而VSCODE有右擊直接讓文件在終端中運行的功能。

因為很多寫好的腳本最終需要放到課題組的Linux伺服器下使用。我就把默認終端設置了為子系統的bash。

然而VSCODE有個蛋疼的特性,右擊選擇在終端中運行後輸入到終端的是

「python d: est.py」 的內容,這樣的話就必然不可能正常運行

那麼有可能通過更改設置使得VSCODE自動將路徑轉換為「python /mnt/d/test.py」 或者直接是「python test.py」 嗎?


vscode作為一個windows下的程序怎麼會明白ubuntu for windows那些奇怪的東西?我覺得你不如寫成這樣:

「Fuck python test.py」

然後被換成

「Fuck python d: est.py」

然後自己寫個Fuck程序進/usr/bin,這個問題就解決了。


看了半天終於明白題主的意思(頭腦比較鈍)

上面很多人都沒看懂題目的意思,也就輪子哥看明白了題目(閱讀理解很重要啊,不懂就多讀幾遍題目)

題主的意思是在vscode的資源管理器上選文件右鍵再點擊「在終端中運行python文件」,而題主選擇了bash(也就是wsl)作為默認終端。而vscode自動傳給終端的命令是「python d:/fuck.py」,而要在wsl上正確運行的命令是「python /mnt/d/fuck.py」,導致wsl找不到文件。

目前來看並沒有解決方案

其實我覺得用命令行效率更高,比較高效率的做法是crtl+`調出終端,py接tab,文件名前幾個字母接tab,enter運行,這樣操作下來我覺得應該會比用滑鼠操作快。


vscode的python插件支持virtual environment,你不妨搜索一下


閱讀理解不合格,答偏了。。

可以試試寫個python.bat設 或python.exe,放在PATH里,轉譯下路徑及調用方式。

python d: est.py應該也可以運行呀,添加python.exe目錄到PATH就可以了。python代碼支持多平台使用沒什麼困惑,倒是寫同時兼容py2和py3的代碼心裡負擔大。。


用Python,,何必強行在win下跑折磨自己……

沒記錯的話,python在win下配置環境蛋疼的一逼


你可以通過 使用 Powershell 來運行子系統中的Python

首先 通過這篇教程為windows 下創建一個配置文件

比如我的電腦是這個路徑

C:UserscopieDocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1

Linux 下安裝 PowerShell 並創建配置文件copie.cn圖標

然後在配置文件中寫入以下代碼

# windows path to Linux path begin
function To-Linux-Path($file){
$file = Get-ChildItem $file
$file = $file.FullName
$paths = $file.split("")
$file_path = "/mnt/"
$pan = $paths[0].ToLower()[0]
$file_path += $pan
for ($i = 1; $i -lt $paths.Count; $i++) {
$file_path += "/"
$file_path += $paths[$i]
}
return $file_path
}
# windows path to Linux path end

# Run Linux Python begin
function Run-Linux-Python {
$command = "python "
foreach ($i in $args) {
if(Test-Path $i){
$command += To-Linux-Path($i)
$command += " "
}else {
$command += $i
$command += " "
}

}
bash -c $command
}
Set-Alias python Run-Linux-Python
# Run Linux python end

這個會覆蓋系統原來的Python這個名字,你可以修改這個名字 只要不和windows下的Python名字衝突就可以了.

這個是按照我自己映射 LInux 子系統的 GCC 和 G++ 寫的 我稍微修改了以下

copie/dayworkspacegithub.com圖標


用win10的wsl的bash作終端,我就這麼乾的


VSCode 有 Linux 版。


推薦閱讀:

win10為什麼要靜默安裝遊戲和軟體?是入鄉隨俗還是收費推送?
微軟和蘋果在對待「槍」這個 Emoji 表情上截然不同的態度體現了什麼?
使用公開的KMS激活伺服器激活的Windows系統是正版授權么?
如何看待“MSDN 我告诉你”重新开启并添加了捐助按钮?
Blu-ray Disc 是如何在光碟次世代競爭中戰勝有微軟和英特爾支持的 HD-DVD 標準的?在中國的現狀和前景如何?

TAG:微軟Microsoft | Python | VisualStudioCode |