Ⅰ linux Shell 教程——想玩轉linux就請一直看下去
Shell 是一個用 C 語言編寫的程序,它是用戶使用 Linux 的橋梁。Shell 既是一種命令語言,又是一種程序設計語言。
Shell 是指一種應用程序,這個應用程序提供了一個界面,用戶通過這個界面訪問操作系統內核的服務。
Ken Thompson 的 sh 是第一種 Unix Shell,Windows Explorer 是一個典型的圖形界面 Shell。
Shell 在線工具
Shell 腳本(shell script),是一種為 shell 編寫的腳本程序。
業界所說的 shell 通常都是指 shell 腳本,但讀者朋友要知道,shell 和 shell script 是兩個不同的概念。
由於習慣的原因,簡潔起見,本文出現的 "shell編程" 都是指 shell 腳本編程,不是指開發 shell 自身。
Shell 編程跟 JavaScript、php 編程一樣,只要有一個能編寫代碼的文本編輯器和一個能解釋執行的腳本解釋器就可以了。
Linux 的 Shell 種類眾多,常見的有:
在一般情況下,人們並不區分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh ,它同樣也可以改為 #!/bin/bash 。
#! 告訴系統其後路徑所指定的程序即是解釋此腳本文件的 Shell 程序。
打開文本編輯器(可以使用 vi/vim 命令來創建文件),新建一個文件 test.sh,擴展名為 sh(sh代表shell),擴展名並不影響腳本執行,見名知意就好,如果你用 php 寫 shell 腳本,擴展名就用 php 好了。
輸入一些代碼,第一行一般是這樣:
#!/bin/bash
echo "Hello World !"
運行實例 »
#! 是一個約定的標記,它告訴系統這個腳本需要什麼解釋器來執行,即使用哪一種 Shell。
echo 命令用於向窗口輸出文本。
1、作為可執行程序
將上面的代碼保存為 test.sh,並 cd 到相應目錄:
注意,一定要寫成 ./test.sh ,而不是 test.sh ,運行其它二進制的程序也一樣,直接寫 test.sh,linux 系統會去 PATH 里尋找有沒有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的當前目錄通常不在 PATH 里,所以寫成 test.sh 是會找不到命令的,要用 ./test.sh 告訴系統說,就在當前目錄找。
2、作為解釋器參數
這種運行方式是,直接運行解釋器,其參數就是 shell 腳本的文件名,如:
這種方式運行的腳本,不需要在第一行指定解釋器信息,寫了也沒用。
Ⅱ linux怎麼進入shell命令窗口
進入控制台就進入了SHELL命令窗口了
使用Ctrl + Alt +T命令可以進入控制台。
Ⅲ 什麼是Linux的登錄shell與非登錄shell
Linux的登錄與非登錄shell的含義及區別:
1、含義:登錄shell,指的是當用戶登錄系統時所取的那個shell,登錄shell屬於互動式shell。
登錄shell將查找4個不同的啟動文件來處理其中的命令,用戶登錄後,在終端上輸入命令,shell立即執行用戶提交的命令,當用戶退出後,shell也終止了。
非互動式:即shell與用戶不存在交互,而是以shellscript的方式執行的,shell讀取存放在文件中的命令,並且執行它們。當它讀到文件的結尾EOF,shell也就終止了。
2、完整度不同:如果啟動了一個bash shell而沒有登入系統(如在CLI提示符中鍵入bash),則啟動了一個互動式非登錄shell。
互動式非登錄shell執行/bashrc文件中的命令,在每次執行shell腳本時,都會重新讀取這個文件,所以是最完整的。
3、使用情況不同:登錄shell的初始化文件(比如.bash_profile)通常會運行這個文件。這樣,登錄shell和非登錄shell都可以使用.bashrc中的命令。
4、登陸方式不同:登錄 shell 需要用戶名、密碼登錄後進入的 shell,或者通過--login選項生成的 shell 。
非登錄 shell 是指不需要輸入用戶名和密碼即可打開的 shell,比如輸入命令bash或者sh就能進入一個全新的非登錄 shell,在 Gnome 或 KDE 中打開一個 「terminal」 窗口,也是一個非登錄 shell。
5、數值不同:
查看$0的值,登錄shell返回-bash,而非登錄shell返回的是bash。
需要注意的是:執行exit命令,退出的shell可以是登錄或者非登錄shell;執行logout命令,則只能退出登錄shell,不能退出非登錄shell。
(3)linux打開shell擴展閱讀:
登陸shell通常指的是:
1、用戶通過輸入用戶名/密碼(或證書認證)後啟動的shell;
2、通過帶有-l|--login參數的bash命令啟動的shell。
例如,系統啟動、遠程登錄、使用su-切換用戶、通過bash--login命令啟動bash等。
而其他情況啟動的shell基本上就都是「非登陸shell」了。
例如,從圖形界面啟動終端、使用su切換用戶、通過bash命令啟動bash等。
Ⅳ linux 怎麼進入shell編程模式
1、連接上相應的linux主機,進入到等待輸入shell指令的linux命令行狀態下。
Ⅳ linux 怎麼進入shell編程模式
linux 可以通過vi或vim命令進入shell編程模式,操作步驟如下:
1、首先在linux終端中創建一個shell腳本文件,例如shell.sh: