自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Bash 基礎(chǔ)知識(shí)系列 #1:創(chuàng)建并運(yùn)行你的第一個(gè) Bash Shell 腳本

系統(tǒng) Linux
這是一個(gè)新教程系列的開始。在這一篇中,你將熟悉 bash 腳本。

本系列假定你對(duì) Linux 終端比較熟悉。你不必精通,但了解基礎(chǔ)知識(shí)會(huì)很好。我建議閱讀終端基礎(chǔ)知識(shí)系列。

這個(gè)系列適合誰?

任何想開始學(xué)習(xí) Bash Shell 腳本的人。

如果你是一名將 Shell 腳本作為課程的一部分的學(xué)生,那么本系列適合你。

如果你是普通的桌面 Linux 用戶,本系列將幫助你了解在探索各種軟件和修復(fù)程序時(shí)遇到的大多數(shù) Shell 腳本。你還可以使用它來自動(dòng)執(zhí)行一些常見的重復(fù)性任務(wù)。

到本 Bash 基礎(chǔ)系列結(jié)束時(shí),你應(yīng)該能夠編寫簡單到中等水平的 Bash 腳本。

該系列的所有章節(jié)都有示例練習(xí),你可以邊做邊學(xué)。

?? 你將在這里學(xué)習(xí) Bash Shell 腳本。雖然還有語法基本相同的其他 Shell,但它們的行為在某些方面仍然存在差異。Bash 是最常見和通用的 Shell,因此學(xué)習(xí) Shell 腳本從 Bash 開始吧。

你的第一個(gè) Shell 腳本:Hello World!

打開一個(gè)終端?,F(xiàn)在 創(chuàng)建一個(gè)新目錄 來保存你將在本系列中創(chuàng)建的所有腳本:

mkdir bash_scripts

現(xiàn)在 切換到這個(gè)新創(chuàng)建的目錄

cd bash_scripts

讓我們?cè)谶@里 創(chuàng)建一個(gè)新文件

touch hello_world.sh

現(xiàn)在,編輯該文件 并向其中添加一行 echo Hello World。你可以使用 cat 命令的追加模式(使用 >)執(zhí)行此操作:

[abhishek@itsfoss]:~/bash_scripts$ cat > hello_world.sh 
echo Hello World
^C

我更喜歡在使用 cat 命令添加文本時(shí)添加新行。

按 Ctrl+C 或 Ctrl+D 鍵退出 cat 命令的追加模式?,F(xiàn)在,如果你查看腳本 hellow_world.sh 的內(nèi)容,你應(yīng)該只看到一行。

Creating first shell script

Creating first shell script

關(guān)鍵時(shí)刻來了。你已經(jīng)創(chuàng)建了第一個(gè) Shell 腳本。是時(shí)候 運(yùn)行 Shell 腳本 了。

這樣做:

bash hello_world.sh

echo 命令只是顯示提供給它的任何內(nèi)容。在這種情況下,Shell 腳本應(yīng)該在屏幕上輸出 “Hello World”。

Run first shell script

Run first shell script

恭喜! 你剛剛成功運(yùn)行了第一個(gè) Shell 腳本。多么酷?。?/p>

以下是上述所有命令的重放,供你參考。

另一種運(yùn)行 Shell 腳本的方法

大多數(shù)時(shí)候,你將以這種方式運(yùn)行 Shell 腳本:

./hello_world.sh

這將產(chǎn)生錯(cuò)誤,因?yàn)樽鳛槟_本的文件還沒有執(zhí)行權(quán)限。

bash: ./hello_world.sh: Permission denied

給腳本添加執(zhí)行權(quán)限:

chmod u+x hello-world.sh

現(xiàn)在,你可以像這樣運(yùn)行它:

./hello_world.sh

Run shell scripts

Run shell scripts

因此,你學(xué)習(xí)了兩種運(yùn)行 Shell 腳本的方法。是時(shí)候讓我們將注意力轉(zhuǎn)回 Bash 了。

把你的 Shell 腳本變成 Bash 腳本

感到困惑? 實(shí)際上,Linux 中有幾種可用的 Shell。Bash、Ksh、Csh、Zsh 等等。其中,Bash 是最受歡迎的,幾乎所有發(fā)行版都默認(rèn)安裝了它。

Shell 是一個(gè)解釋器。它接受并運(yùn)行 Linux 命令。雖然大多數(shù) Shell 的語法保持不變,但它們的行為在某些點(diǎn)上可能有所不同。例如,條件邏輯中括號(hào)的處理。

這就是為什么告訴系統(tǒng)使用哪個(gè) Shell 來解釋腳本很重要。

當(dāng)你使用 bash hello_world.sh 時(shí),你明確地使用了 Bash 解釋器。

但是當(dāng)你以這種方式運(yùn)行 Shell 腳本時(shí):

./hello_world.sh

系統(tǒng)將使用你當(dāng)前使用的任何 Shell 來運(yùn)行腳本。

為避免由于不同的語法處理而導(dǎo)致不必要的意外,你應(yīng)該明確告訴系統(tǒng)它是哪個(gè) shell 腳本。

怎么做? 使用釋伴(#!)。通常,# 用于 Shell 腳本中的注釋。但是,如果 #! 用作程序的第一行,它的特殊用途是告訴系統(tǒng)使用哪個(gè) Shell。

因此,更改 hello_world.sh 的內(nèi)容,使其看起來像這樣:

#!/bin/bash
echo Hello World

現(xiàn)在,你可以像往常一樣運(yùn)行 Shell 腳本,因?yàn)槟阒老到y(tǒng)將使用 Bash Shell 來運(yùn)行腳本。

Run bash shell script

Run bash shell script

?? 如果你覺得在終端中編輯腳本文件不方便,作為桌面 Linux 用戶,你可以使用 Gedit 或其他 GUI 文本編輯器編寫腳本并在終端中運(yùn)行。

??? 練習(xí)時(shí)間

是時(shí)候練習(xí)你學(xué)到的東西了。以下是該級(jí)別的一些基本練習(xí):

  • 編寫一個(gè)打印 “Hello Everyone” 的 Bash 腳本
  • 編寫一個(gè)顯示當(dāng)前工作目錄的 Bash 腳本(提示:使用 pwd 命令)
  • 編寫一個(gè) Shell 腳本,使用以下列方式打印你的用戶名:“My name is XYZ”(提示:使用 $USER

答案可以在社區(qū)論壇的 這個(gè)專門的帖子 中討論。

最后一個(gè)練習(xí)使用 $USER。這是一個(gè)打印用戶名的特殊變量。

這就引出了 Bash 基礎(chǔ)系列下一章的主題:變量。

請(qǐng)繼續(xù)關(guān)注下面的內(nèi)容。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2022-11-28 08:01:47

BashLinuxshell 腳本

2023-08-22 21:42:03

Bash函數(shù)

2023-07-20 15:37:50

Bash數(shù)組

2023-07-12 14:13:03

BashLinux

2023-08-11 15:46:40

BashIf Else 語句

2023-07-17 14:29:01

Bash算術(shù)運(yùn)算

2023-08-21 12:31:41

BashForWhile

2023-07-30 09:50:51

Bash字符串

2022-11-30 07:47:00

Bash腳本

2022-11-03 08:13:52

echo 命令Linux

2021-12-30 10:26:37

Bash Shell腳本文件命令

2023-04-10 18:03:18

Rust編程語言

2023-07-15 18:19:47

Bash參數(shù)

2010-08-04 13:16:23

Flex項(xiàng)目

2022-12-01 08:10:49

Bash腳本參數(shù)

2016-08-05 12:58:44

GitLinux開源

2016-08-24 15:12:41

LXDLinux容器

2021-05-11 07:50:31

BashShell腳本

2022-01-20 16:43:38

Bash 腳本ShellLinux

2022-02-28 11:02:53

函數(shù)Bash Shell語句
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)