如何在windows10上建立和執行bashshell指令碼

隨著windows10的bashshell的到來,您現在可以在windows10上建立和執行bashshell指令碼了。您還可以將Bash命令合併到Windows批處理檔案或PowerShell指令碼中。...

如何在windows10上建立和執行bashshell指令碼

隨著windows10的bashshell的到來,您現在可以在windows10上建立和執行bashshell指令碼了。您還可以將Bash命令合併到Windows批處理檔案或PowerShell指令碼中。

即使你知道你在做什麼,這也不一定像看上去那麼簡單。Windows和UNIX使用不同的行尾字元,並且Windows檔案系統可以在Bash環境中的不同位置訪問。

如何在windows10上編寫bash指令碼

相關:如何在windows10上安裝和使用Linux Bash Shell

在Windows上編寫shell指令碼時,請記住Windows和類似UNIX的系統(如Linux)在shell指令碼的文字檔案中使用不同的“行尾”字元。

換句話說,這意味著您不能簡單地在記事本中編寫shell指令碼。將檔案儲存在記事本中,Bash將無**確解釋它。但是,您可以使用更高階的文字編輯器–例如,Notepad++允許您透過單擊“編輯”>“EOL轉換”>“UNIX/OSX格式”為檔案指定UNIX行尾字元。

如何在windows10上建立和執行bashshell指令碼

但是,最好只在Bash環境中編寫shell指令碼。基於Ubuntu的Bash環境附帶了vi和nano文字編輯器。vi編輯器功能更強大,但是如果您以前從未使用過它,您可能需要從nano開始。如果你是新來的,它更容易使用。

例如,要在nano中建立bash指令碼,可以在bash中執行以下命令:

nano ~/myscript.sh

這將開啟指向名為“的檔案的Nano文字編輯器”myscript.sh“在使用者帳戶的主目錄中。(“~”字元表示您的主目錄,因此完整路徑為/home/username/myscript.sh.)

如何在windows10上建立和執行bashshell指令碼

用以下行開始shell指令碼:

#!/bin/bash

相關內容:Shell指令碼初學者指南:基礎知識

輸入要執行的命令,每個命令都在自己的行中。指令碼將依次執行每個命令。在一行之前新增一個“#”字元,將其視為“註釋”,這有助於您和其他人理解指令碼,但不會作為命令執行。有關更高階的技巧,請參閱Linux上Bash指令碼的更詳細指南。同樣的技術也可以在Windows上的Ubuntu上的Bash中使用。

請注意,無法在Bash環境中執行Windows程式。您只能使用Linux終端命令和實用程式,就像在典型的Linux系統上一樣。

例如,讓我們使用一個基本的“hello world”指令碼作為示例:

#!/bin/bash # set the STRING variable STRING="Hello World!" # print the contents of the variable on screen echo $STRING

如果您使用的是Nano文字編輯器,則可以透過按Ctrl+O然後回車來儲存檔案。按Ctrl+X關閉編輯器。

如何在windows10上建立和執行bashshell指令碼

使指令碼可執行,然後執行它

您可能希望使指令碼可執行,這樣您就可以更輕鬆地執行它。在Linux上,這意味著您需要給指令碼檔案可執行的許可權。為此,在終端中執行以下命令,並將其指向指令碼:

chmod +x ~/myscript.sh

如何在windows10上建立和執行bashshell指令碼

要執行指令碼,現在只需在終端中鍵入其路徑即可執行它。以後無論何時要啟動指令碼,只要開啟bashshell並鍵入指令碼的路徑即可。

~/myscript.sh

(如果指令碼在當前目錄中,則可以使用它執行/myscript.sh)

如何在windows10上建立和執行bashshell指令碼

如何在bash指令碼中使用windows檔案

相關:如何在Windows中訪問Ubuntu Bash檔案(以及Bash中的Windows系統驅動器)

要訪問指令碼中的Windows檔案,需要在/mnt/c下指定它們的路徑,而不是它們的Windows路徑。例如,如果要指定C:\Users\Bob\Downloads\測試.txt檔案,則需要指定/mnt/c/Users/Bob/Downloads/測試.txt路徑。有關更多詳細資訊,請參閱我們的Windows10的bashshell檔案位置指南。

如何將bash命令合併到批處理或powershell指令碼中

相關:如何在Windows10上設定預設的Linux發行版

最後,如果要將命令合併到現有的批處理檔案或PowerShell指令碼中,可以直接使用Bash-c命令執行Bash命令。

例如,要在命令提示符或PowerShell視窗中執行Linux命令,可以執行以下命令:

bash -c "command"

這個技巧允許您將Bash命令新增到批處理檔案或PowerShell指令碼中。Bash命令執行時,將出現bashshell視窗。

更新:如果安裝了多個Linux環境,那麼可以使用wslconfig命令選擇執行bash-c命令時使用的預設Linux環境。

如何在windows10上建立和執行bashshell指令碼


要在Windows中建立Bash指令碼的快捷方式,只需像普通方式一樣建立快捷方式。對於快捷方式的目標,使用上面概述的bash-c命令並將其指向您建立的bash指令碼。

例如,您可以將快捷方式指向“bash-c”~/myscript.sh檔案“”來執行上面的示例指令碼。也可以從命令提示符或PowerShell視窗執行此命令。

  • 發表於 2021-04-09 10:54
  • 閱讀 ( 48 )
  • 分類:網際網路

你可能感興趣的文章

使用簡單的shell指令碼修復html格式

... 首先,讓我們從定義“shell指令碼”開始,即編寫要在bashshell中執行的指令碼。從技術上講,Powershell等其他指令碼語言也可以被稱為“shell指令碼”,但為什麼首先要關注shell指令碼,特別是Bash指令碼呢? ...

  • 發佈於 2021-03-13 00:12
  • 閲讀 ( 47 )

什麼是shell指令碼,為什麼要使用它

... 在本文中,我們將描述bashshell的shell指令碼。 ...

  • 發佈於 2021-03-13 04:53
  • 閲讀 ( 53 )

7個簡單的windows指令碼,為您節省時間和精力

...然後從這裡開始。弄清楚它們是怎麼工作的。想一想你該如何為自己調整它們。一旦你對什麼是指令碼感到滿意,你就可以考慮潛入編碼的本質。 ...

  • 發佈於 2021-03-15 21:37
  • 閲讀 ( 54 )

如何在windows10上獲得linux bash shell

... 兩者都將顯示為“Run命令”,可以選擇該命令立即開啟bashshell。使用這兩種方法的區別在於,它們在/mnt/c/Windows/System32目錄中開啟。這意味著您可以在Windows10中瀏覽System32子目錄。 ...

  • 發佈於 2021-03-21 11:48
  • 閲讀 ( 58 )

關於linux中bash for loops的所有知識

... bash指令碼只是一個純文字檔案,其中包含bashshell可以讀取和執行的一系列命令。Bash是catalinamacos之前版本和大多數Linux發行版中的預設shell。 ...

  • 發佈於 2021-03-29 06:22
  • 閲讀 ( 59 )

如何使用chsh在linux上更改預設shell

...Bourne shell在許多發行版中都是預設的。 rbash:這個受限的bashshell為其中執行的人員或指令碼提供了最少的功能。 ash:Almquist shell是bash的較輕版本。 破折號:Debian Alquist Shell是Ubuntu中的預設Shell指令碼。bash是預設的登入和互動式shel...

  • 發佈於 2021-04-02 06:04
  • 閲讀 ( 64 )

如何在linux上使用at和batch來排程命令

...動一個sh shell例項,並在其中執行命令。您的命令不會在bashshell中執行,bashshell與shshell相容,但具有更豐富的特性集。 如果您的命令或指令碼嘗試使用Bash提供的函式或工具,但sh沒有,它們將失敗。 很容易測試您的命令或指令...

  • 發佈於 2021-04-02 18:33
  • 閲讀 ( 67 )

如何在windows上使用caps lock作為修改鍵

...鍵或為鍵指定不同操作的快速方法。 例如,我們展示瞭如何使用AutoHotkey來禁用Windows鍵,防止它開啟“開始”選單並將您從全屏PC遊戲中帶出。不用撬開鍵盤上的鍵帽。 安裝autohotkey並獲取指令碼 下載自動熱鍵並開始安裝。接下...

  • 發佈於 2021-04-03 00:18
  • 閲讀 ( 48 )

如何在linux上建立別名和shell函式

使用別名和bashshell函式建立自己的Linux命令。馴服重複性的任務,截斷冗長的程序,並用您經常使用且難以記住的選項配置標準命令。 別名和shell指令碼是Linux和類Unix作業系統中的強大技術,允許您將命令列體驗磨練為您想要的...

  • 發佈於 2021-04-03 03:45
  • 閲讀 ( 45 )

bash需要知道的15個特殊字元

如果您想在Linux、macOS或其他類似UNIX的系統上掌握bashshell,那麼特殊字元(如~、*、|和>)是至關重要的。我們將幫助您解開這些神祕的Linux命令序列,成為象形文字的英雄。 什麼是特殊字元(special characters)? bashshell以兩...

  • 發佈於 2021-04-03 03:58
  • 閲讀 ( 48 )
tanyi57
tanyi57

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦