開(kāi)始使用 Raspberry Pi 單板計(jì)算機(jī) (SBC) 通常意味著安裝 Raspberry Pi OS,并與其類(lèi)似 Windows 的圖形用戶(hù)環(huán)境進(jìn)行交互。這一切都很好,但是 Raspberry Pi 和其他基于 Linux 的系統(tǒng)的真正強(qiáng)大功能可以通過(guò)使用 Bash 的命令行輸入獲得。
雖然有點(diǎn)學(xué)習(xí)曲線(xiàn),但一旦你熟悉了自己的方式,這并不難;模糊地讓人想起您可能熟悉的 MS-DOS 提示符。您當(dāng)然可以創(chuàng)建和刪除文件以及各種其他任務(wù),要求您記住文本命令,而不是通過(guò)一系列菜單。一開(kāi)始會(huì)令人沮喪,但一旦掌握了這項(xiàng)技術(shù),它就是一個(gè)出色的界面。
為了更上一層樓,您甚至可以編寫(xiě)自動(dòng)輸入的 Bash shell 腳本,將一個(gè)命令變成多個(gè)命令。當(dāng)您必須一遍又一遍地執(zhí)行任務(wù)時(shí),這些腳本可以為您節(jié)省大量輸入,甚至可以將它們?cè)O(shè)置為在不同時(shí)間自動(dòng)執(zhí)行。
基礎(chǔ)知識(shí)
要在 Raspberry Pi Bash Shell 環(huán)境中創(chuàng)建您的第一個(gè)腳本,請(qǐng)?jiān)谀闹髂夸浿休斎雜udo nano hello-shell.sh 。在文本編輯器中,在第一行輸入#!/bin/sh,這就是所謂的“shebang”。這告訴腳本如何執(zhí)行命令,但現(xiàn)在只需接受這一行將在您編寫(xiě)的每個(gè)腳本的頂部。
在第二行,輸入echo “Hello world!” ,然后使用Ctrl+x關(guān)閉文本編輯器,然后使用y和Enter保存文件。關(guān)閉后,輸入sh hello-shell.sh以查看“Hello world!”字樣。像魔術(shù)一樣在你的屏幕上彈出。如果您與文件在同一目錄中工作,您也可以使用。/hello-shell.sh運(yùn)行腳本,但您需要事先運(yùn)行sudo chmod +x hello-shell.sh以使其自身可執(zhí)行。
更多示例
除了簡(jiǎn)單地打個(gè)招呼之外,Bash 腳本還非常適合任務(wù)自動(dòng)化。以這個(gè)腳本為例:
#!/bin/bash
echo “shell script”
ls -l
echo “pausing for 5 seconds”
# this is a comment
sleep 5
ls -a
在 shebang 之后,腳本輸出它是一個(gè)帶有echo命令的 shell 腳本,然后執(zhí)行命令ls -l以相當(dāng)詳細(xì)地顯示目錄中的文件。然后它聲明它暫停了 5 秒——實(shí)際上暫停了 5 秒——然后列出了目錄中的文件,沒(méi)有太多細(xì)節(jié),但包括隱藏文件。注意# 這是注釋行。“#”符號(hào)用于在 Bash 中開(kāi)始注釋行,除了在它們處理 shebang 的第一行。

如何使用變量,甚至數(shù)學(xué)?Bash 能夠做到這一點(diǎn),甚至更多。考慮這個(gè)腳本,它是從堪薩斯州立大學(xué)BASH 文檔頁(yè)面上的第一個(gè)腳本大量修改的:
#!/bin/bash
echo “math and variables”
n=6/3
echo $n
n=$((6/3))
echo $n
k=$((n/3))
echo $k
如下所示,腳本首先說(shuō)“數(shù)學(xué)和變量”。然后它會(huì)回顯 n 的字面意思是“6/3”,因?yàn)樗亲鳛樽址幚淼?。事?shí)上,你可以輸入“n=6/3hello”,它也會(huì)輸出。然而,一旦你輸入 $((6/3)),它就會(huì)被計(jì)算為整數(shù) 2,然后可以用它來(lái)計(jì)算 k。請(qǐng)注意,k 是一個(gè)整數(shù),由 2/3 得出,即 0。

如果您嘗試輸入原始的 K 狀態(tài)代碼 (5.9.1),您會(huì)注意到它實(shí)際上并沒(méi)有在 Raspberry Pi 上運(yùn)行。不幸的是,所有版本的 Bash 處理輸入的方式都不相同。我使用在這里找到的信息來(lái)讓事情正常工作,如果你想復(fù)制一個(gè)非 Pi 特定的腳本,你可能需要花點(diǎn)時(shí)間。
拋開(kāi)潛在的麻煩不談,Bash 可以是一個(gè)非常強(qiáng)大的工具,讓您可以自動(dòng)執(zhí)行各種任務(wù)。在即將發(fā)表的文章中,我將展示如何使用 Bash 腳本以及一些硬件技巧來(lái)自動(dòng)化我的 Raspberry Pi 冷卻風(fēng)扇。
審核編輯:郭婷
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7835瀏覽量
93435 -
WINDOWS
+關(guān)注
關(guān)注
4文章
3705瀏覽量
94302
發(fā)布評(píng)論請(qǐng)先 登錄
關(guān)于冷卻的話(huà)題:手動(dòng)控制 5V PWM 風(fēng)扇,通過(guò)腳本控制,并通過(guò)內(nèi)核自動(dòng)控制
請(qǐng)問(wèn)如何讓 Sony-IMX219-Raspberry-Pi-V2-CMOS 相機(jī)與 VisionFive2 配合使用?
Banana Pi BPI-CM6 – 一款與 Raspberry Pi CM4/CM5 載板兼容的 SpacemiT K1 RISC-V 系統(tǒng)模塊
Banana Pi BPI-CM6 – 一款與 Raspberry Pi CM4/CM5 載板兼容的 SpacemiT K1 RISC-V 系統(tǒng)模塊
e203仿真報(bào)Syntax error: \"&\"unexpected錯(cuò)誤的原因
【EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目-實(shí)現(xiàn)開(kāi)機(jī)起動(dòng)
【CIE全國(guó)RISC-V創(chuàng)新應(yīng)用大賽】+基于MUSE Pi Pro的3d激光里程計(jì)實(shí)現(xiàn)
shell基本介紹及常用命令之shell基本介紹
Raspberry Pi攜手上海晶珩 助力工業(yè)與物聯(lián)網(wǎng)創(chuàng)新
Banana Pi BPI-R4 Lite:新型單板計(jì)算機(jī)比 Raspberry Pi 5 更具優(yōu)勢(shì)
Shell腳本入門(mén)指南
Raspberry Pi Bash Shell 腳本簡(jiǎn)介
評(píng)論