Arduino vs Raspberry Pi

對比兩個最受歡迎的 tinkering 平台 最近我買了一個 Arduino。 在我構思要在 15 年無觸碰電阻器後玩弄電子裝置的點子時,我記得我花了一些時間搜索什麼樣的裝置最適合我想做的事情。 在這方面,最受歡迎的兩個平台有 Arduino 和 Raspberry Pi。雖然還有許多其他平台,但這兩個是最受歡迎的,我想在這篇文章中解釋一下這兩者的不同之處。 這是 Arduino Uno,我們將以它作為例子,雖然 Arduino 還提供許多不同的板子。這是我選擇的板子,順便說一下: 這是 Raspberry Pi Model B+: 一開始看它們相似,芯片、連接器、螺絲孔。 結果,它們實際上非常非常不同。 從核心開始講。Arduino 使用 8 位元微控制器(microcontroller)。Raspberry Pi 使用 64 位元微處理器(microprocessor)。 Arduino 只有 2 KB 的 RAM。Raspberry Pi 有 1GB 的 RAM(是 Arduino 的 500,000 倍)。 在 I/O 方面,Arduino 有一個 USB-B 連接埠可供電腦傳送新的程式來執行,還有一個電源輸入和一組 I/O 引脚。 Raspberry Pi 在這方面更加複雜,有一個視訊輸出、一個 HDMI 連接埠、一個 SD 記憶卡連接埠、一個音訊插孔、一個 CSI 相機連接埠、一個 DSI 顯示器連接埠、4 個 USB 2.0 連接埠,可用於連接 USB 裝置,一個 Gigabit 以太網插孔、無線局域網 (Wireless LAN)、藍牙 4....

Linux 命令:basename

快速指南 basename 命令,用於返回路徑的文件名部分 假設你有一個文件的路徑,例如 /Users/flavio/test.txt。 運行 basename /Users/flavio/test.txt 將返回 text.txt 字符串: 如果你在指向目錄的路徑字符串上運行 basename,你將獲得路徑的最後一個部分。在這個例子中,/Users/flavio 是一個目錄: basename 命令在 Linux、macOS、WSL 和任何你有 UNIX 環境的地方都可以使用。

Linux 命令:chown

快速指南 - chown 命令,用於更改文件的所有者 在像 Linux 或 macOS(以及大部分的 UNIX 系統)之類的操作系統中,每個文件/目錄都有一個所有者。 文件的所有者可以對其進行各種操作。它可以決定該文件的命運。 所有者(以及 root 用戶)還可以使用 chown 命令將所有權變更為另一個用戶: chown <owner> <file> 像這樣: chown flavio test.txt 例如,如果您有一個由 root 所擁有的文件,您不能以其他用戶身份對其進行寫入: 您可以使用 chown 將其所有權轉移到自己身上: 有時需要更改目錄的所有者以及遞歸地修改其中包含的所有文件、子目錄以及其中包含的文件。您可以使用 -R 標誌進行操作: chown -R <owner> <file> 除了所有者外,文件/目錄還有一個群組。使用此命令,您可以在更改所有者的同時同時更改群組: chown <owner>:<group> <file> 例如: chown flavio:users test.txt 您還可以使用 chgrp 命令僅更改文件的群組: chgrp <group> <filename> chown 命令適用於 Linux、macOS、WSL 以及任何擁有 UNIX 環境的地方。

Linux 命令:find

快速指南,介紹用於在文件系統上查找文件和文件夾的 find 命令。 find 命令用於查找與特定搜索模式匹配的文件或文件夾。它可以遞歸搜索。 讓我們通過例子來學習它。 查找當前目錄下具有 .js 擴展名的所有文件,並打印每個匹配文件的相對路徑: find . -name '*.js' 重要提示:使用引號引起來處理特殊字符,例如 *,以避免shell解釋它們。 查找當前目錄下名稱為 “src” 的目錄: find . -type d -name src 使用 -type f 只搜索文件,使用 -type l 只搜索符號鏈接。 -name 區分大小寫,使用 -iname 執行不區分大小寫的搜索。 你可以在多個根目錄下進行搜索: find folder1 folder2 -name filename.txt 查找當前目錄下名稱為 “node_modules” 或 ‘public’ 的目錄: find . -type d -name node_modules -or -name public 你還可以使用 -not -path 排除某個路徑: find . -type d -name '*.md' -not -path 'node_modules/*' 你可以搜索具有超過 100 個字符(字節)的文件:...

Linux 命令:grep

快速指南 grep 命令,用於在文本中匹配模式。 grep 命令是一種非常有用的工具,當您掌握它時,將在您的日常工作中大大幫助您。 如果您想知道,grep 代表全局正則表達式打印 您可以使用 grep 在文件中搜索,或將其與管道結合以過濾另一個命令的輸出。 例如,這裡是如何在 index.md 文件中查找 document.getElementById 行的出現次數: grep -n document.getElementById index.md 使用 -n 選項將顯示行號: grep -n document.getElementById index.md 其中一個非常有用的功能是告訴 grep 在匹配行之前和之後打印 2 行,以提供更多上下文。這可以使用 -C 選項完成,該選項接受一個行數: grep -nC 2 document.getElementById index.md 默認情況下,搜索區分大小寫。使用 -i 標誌使其不區分大小寫。 正如前面提到的,您可以使用 grep 過濾另一個命令的輸出。我們可以使用以下方式復制上面的功能: less index.md | grep -n document.getElementById 搜索字符串可以是正則表達式,這使得 grep 具有很強的功能。 您可能會發現非常有用的另一個功能是反轉結果,排除匹配特定字符串的行,使用 -v 選項: grep 命令可在 Linux、macOS、WSL 和任何具有 UNIX 環境的地方運行。

Linux 命令:su

快速指南 su 命令,用于切换到另一个用户的 shell。 当您使用一个用户登录到终端 shell 时,您可能需要切换到另一个用户。 例如,您登录为 root 用户执行一些维护操作,但随后您想切换到另一个用户账号。 您可以使用以下 su 命令来实现: su <用户名> 例如:su flavio。 如果您以用户身份登录,运行 su 命令而无其他内容,则会提示您输入 root 用户密码,因为这是默认行为。 su 命令将作为另一个用户启动一个新的 shell。 完成后,在 shell 中键入 exit 将关闭该 shell,并返回到当前用户的 shell。 su 命令在 Linux 上运行。在 macOS 上,除非您启用了 root 用户(提示:您可以使用 sudo 替代)否则不起作用。

Linux 指令:alias

快速指南,介紹 alias 指令,用於建立對其他指令的快捷方式。 通常,我們會使用一組自訂的選項運行程式。 以 ls 指令為例。默認情況下,它只會顯示很少的資訊: 但是,使用 -al 選項時,它將顯示更多有用的資訊,包括檔案的修改日期、大小、擁有者和權限,同時還會列出隱藏檔案(以 . 開頭的檔案): 你可以建立一個新的指令,比如我喜歡叫它 ll,它會成為 ls -al 的別名。 你可以使用以下方式建立這個別名: alias ll='ls -al' 建立完後,你可以像使用一個普通的 UNIX 指令一樣呼叫 ll: 現在,只呼叫 alias 指令而不使用任何選項,將會列出所有已定義的別名: 別名會在終端機會話結束前一直有效。 若要使其永久生效,你需要將其添加到 shell 配置文件中,依據使用的 shell 不同,配置文件可能是 ~/.bashrc、~/.profile 或 ~/.bash_profile。 如果指令中包含變數,注意使用引號:使用雙引號時,變數在定義時解析;使用單引號時,變數在調用時解析。這兩者是不同的: alias lsthis="ls $PWD" alias lscurrent='ls $PWD' $PWD 代表 shell 目前所在的資料夾。如果你切換到新資料夾,lscurrent 將列出新資料夾中的檔案,而 lsthis 仍會列出你定義別名時所在資料夾的檔案。 alias 指令適用於 Linux、macOS、WSL,以及任何具有 UNIX 環境的地方。

Linux 指令:dirname

一個快速指南,介紹 dirname 指令,用於提取路徑的目錄部分 假設你有一個文件的路徑,例如 /Users/flavio/test.txt。 執行 dirname /Users/flavio/test.txt 將返回 /Users/flavio 字串: dirname 指令在 Linux、macOS、WSL 上以及任何有 UNIX 環境的地方均可使用。

linux-command-clear

#Linux命令:clear 快速指南:clear命令,用於清除終端的屏幕。 輸入clear以清除當前終端中過去執行的所有命令。 屏幕將清除,您將只看到頂部的提示符: 注意:這個命令有一個方便的快捷鍵:ctrl-L 這樣做后,您將無法滾動查看先前輸入的命令的輸出。 因此,您可能想使用clear -x,它仍然清除屏幕,但允許您向上滾動查看先前的工作。 clear命令適用於Linux、macOS、WSL和任何擁有UNIX環境的地方

linux-command-killall

#Linux 命令:killall 快速指南 killall 命令,用於向目前正在運行的多個進程發送信號 與 kill 命令類似,killall 會一次將信號發送給多個進程,而不是特定的進程 ID。 這是語法: killall <name> 其中 name 是程序的名稱。例如,您可以有多個 top 程序實例正在運行,而 killall top 則會終止它們。 您可以指定信號,就像使用 kill 一樣(請參閱 kill 教程以了解有關我們可以發送的特定信號的更多信息),例如: killall -HUP top 此命令適用於 Linux、macOS、WSL,以及任何擁有 UNIX 環境的地方