Linux : shell基礎(慕課網Linux達人養成計劃課程筆記)

Shell概述

  • shell是Linux中的命令行解釋器,為用戶提供了一個向Linux內核發送請求一邊運行程序的界面系統級程序,用戶可以用shell來啟動、掛起、停止甚至編寫一些程序。
  • shell還是一個功能相當強大的編程語言,易編寫,易調試,靈活。是解釋執行的腳本語言,在shell中可以直接調用Linux系統命令。

Shell的種類
主要是B shell和C shell兩類,兩種不同的語法類型,彼此不兼容。

  • Bourne家族主要包括:sh, ksh,Bash【Linux中的標準shell】,pash,zsh
  • C家族: csh,tcsh,Unix中用的多
  • 查看linux中的shell類型:
    圖片描述
  • Linux中支持的shell類型:查看 /etc/shells文件
    圖片描述

腳本執行方式
1、echo 輸出命令:將制定內容輸出到屏幕上
echo 選項
選項:
-e:支持反斜線控制的字符轉換
圖片描述

顏色控制:
[root@localhost~]# echo -e "e[1;31m 待輸出內容 e[0m"
開始標志:e[1;31m(31m=紅色,32m=綠色,33m=黃色.....)
輸入標志:e[0m
圖片描述

2.第一個腳本
[root@localhost~]# vim hello.sh
創建后按i進入輸入模式

#!/bin/bash
#此處寫注釋
echo -e "my first shell,n ello world!"

寫完后esc退出輸入模式,鍵入wq保存退出。

3、腳本執行
兩種方法

  • 賦予執行權限,直接運行
    chmod 775 hello.sh #賦予權限
    ./hello.sh #相對路徑,調用腳本
  • 通過bash調用執行腳本
    bash hello.sh
    圖片描述

Bash的基本功能
1.命名別名與快捷鍵
命令別名==人的小名
查看與設定別名
alias #查看系統中所有的命令別名
圖片描述
alias 別名=‘原命令’ #設定命令別名、計算機重啟后失效
圖片描述
別名永久生效與刪除別名
vi ~/.bashrc #寫入環境變量配置文件,重新登錄后永久生效
圖片描述

unalias 別名 #刪除別名,臨時刪除
vi ~/.bashrc 永久刪除

命令生效順序:
第一順位執行用絕對路徑或相對路徑執行的命令
第二順位執行別名
第三順位執行bash的內部命令
第四順位執行按照¥PATH環境變量定義的目錄查找順序找到的第一個命令

常用快捷鍵:
圖片描述

2.歷史命令
history 選項
選項
-c:清空歷史命令
-w:把緩存中的歷史命令寫入歷史命令保存文件~/.bash_history(只記錄這次登錄之前的歷史命令)
歷史命令默認保存100條,可以在環境變量配置文件中的/etc/profile中進行修改(his size)

歷史命令的調用:
使用上下箭頭調用以前的歷史命令
使用“!n”重復執行第n條歷史命令
使用“!!”重復執行上一條命令
使用“!字串”重復只想能夠最后一條以該字串開頭的命令

命令與文件補全:
在bash中,在輸入命令或文件時按“TAB”進行補全。
按一下:
按兩下:顯示所有以輸入字符為開頭的命令

3.輸出重定向

clipboard.png
圖片描述
注意: 正常輸出> >>符號左右有空格“ ”
錯誤輸出> >>符合左右不能加空格!
正確輸出和錯誤輸出要求不一樣的命令,現實中不常用。
圖片描述

圖片描述
[root@localhost~]#wc <文件名 #統計文件內容
[root@localhost~]#wc <<標記 #統計開始輸入字符到標記之間的內容

4.多命令順序執行
圖片描述
圖片描述

5.shell中的特殊符號
圖片描述
圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/454768.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/454768.shtml
英文地址,請注明出處:http://en.pswp.cn/news/454768.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于matlab的大米,大米顆數計算MATLAB軟件

應用背景大米是人類的主食之一&#xff0c;是稻谷經清理、礱谷、碾米、成品整理等工序后制成的成品。人們購買米大多采用直接稱量的方法&#xff0c;市面上也有許多儀器采用光電傳感器等方式用于生產加工時米粒的計數。然而這樣的方法都比較依賴于設備&#xff0c;不方便人們日…

ubuntu17.04之apt-get源

不要問我這么簡單的也要寫&#xff0c;我只想說在網上百度了一堆源&#xff0c;在筆者這里只有一個能用&#xff0c;悲傷的表情&#xff0c;還是記錄一下吧 這個是清華的apt-get源&#xff0c;適用于ubuntu17.04apt-get源文件目錄 /etc/apt/sources.list &#xff0c;記得先備份…

HttpClient通過Post方式發送Json數據

服務器用的是Springmvc&#xff0c;接口內容&#xff1a; [java] view plaincopy print?ResponseBody RequestMapping(value"/order",methodRequestMethod.POST) public boolean order(HttpServletRequest request,RequestBody List<Order> orders) throws …

openssl、ssh

PKI&#xff1a;公鑰基礎設施&#xff0c;保證服務器向客戶端發送的證書的可靠性&#xff1b;簽證機構&#xff1a;CA注冊機構&#xff1a;RA證書吊銷列表&#xff1a;CRL證書存取庫&#xff1a;CAB威瑞信——verisignGlobalSign賽門鐵克AsiaCOM國際標準化組織定義了證書的標準…

php圖型分析插件,IMAGE縮略圖插件

應用信息 名稱: IMAGE縮略圖插件 售價: (免費) 應用ID: IMAGE 最低要求: Z-BlogPHP 1.5.1 Zero Build 151740版 本: 2 發布日期: 2014-08-27PHP最低版本要求: 5.3 更新日期: 2018-05-21立即購買 加入購物車作者信息 開發者ID: 十五樓的鳥兒 本站用戶組: 管理員 聯系郵箱: adm…

職業生涯步步高

在擔任公司高管的幾年間&#xff0c;我面試過數以百計的各個層面的員工&#xff0c;其中最讓我感到遺憾的一個現象就是很多人有著非常好的素質&#xff0c;甚至有的還是名校的畢業生&#xff0c;因為不懂得去規劃自己的職業&#xff0c;在工作多年后&#xff0c;依然拿著微薄的…

httpd2.2配置文件詳解

一丶Apache常用目錄詳解1) /etc/httpd/conf/httpd.confhttpd.conf是Apache的主配文件&#xff0c;整個Apache也不過就是這個配置文件&#xff0c;里面幾乎包含了所有的配置。有的distribution都將這個文件拆分成數個小文件分別管理不同的參數。但是主要配置文件還是以這個文件為…

2017.9.5 postgresql加密函數的使用

需要安裝的插件的名字&#xff1a;pgcrypto官網地址&#xff1a;https://www.postgresql.org/docs/9.4/static/pgcrypto.htmlstackoverflow:https://stackoverflow.com/questions/8000740/how-do-i-install-pgcrypto-in-postgresql-9-1-on-windows/46046367#46046367https://st…

php 序列化方法,PHP序列化操作方法分析

本文實例講述了PHP序列化操作方法。分享給大家供大家參考&#xff0c;具體如下&#xff1a;序列化就是將變量數據轉換為字符串(跟類型轉換機制不同)&#xff0c;一般應用于存儲數據(文件)&#xff0c;然后在別的情形下恢復(反序列化)序列化&#xff1a;$val serialize($var);f…

Redis入門到精通-Redis數據類型

2019獨角獸企業重金招聘Python工程師標準>>> 登錄Redis數據庫 [rootlocalhost bin]# /usr/local/redis/bin/redis-cli String類型 ? String 數據結構是簡單的key-value類型&#xff0c;value其實不僅是String&#xff0c;也可以是數字&#xff0c;是包含很多種類型…

裝機之 BIOS、EFI與UEFI詳解

在我們的電腦中&#xff0c;都有一塊黑色的小芯片。但是請千萬不要小看它&#xff0c;如果它損壞或者數據錯誤亂套的話&#xff0c;恭喜&#xff0c;如果不會“救回”這個小芯片&#xff0c;那么這臺電腦可以掛閑魚賣零件了…… 這個小芯片是什么呢&#xff1f;對&#xff0c;…

c/c++筆試題

微軟亞洲技術中心的面試題&#xff01;&#xff01;&#xff01; 1&#xff0e;進程和線程的差別。 線程是指進程內的一個執行單元,也是進程內的可調度實體. 與進程的區別: (1)調度&#xff1a;線程作為調度和分配的基本單位&#xff0c;進程作為擁有資源的基本單位 (2)并發性&…

php 模板 php + mysql + myodbc,連接MySQL數據庫在ASP中,就用MyODBC

我們大家都知道ASP與MySQL連接現在應用最為廣泛的兩種辦法是&#xff0c;一是使用組件&#xff0c;經常使用的是MySQL(和PHP搭配之最佳組合)X&#xff0c;可惜價格很貴。另一個就是用MyODBC來連接MySQL數據庫&#xff0c;下面我們就來看看第二種方式。 試驗的平臺&#xff1a; …

Android Gradle和Gradle插件區別

2019獨角獸企業重金招聘Python工程師標準>>> 一、引言 1、什么是Gradle?什么是Gradle插件? build.gradle中依賴的classpath com.android.tools.build:gradle:2.1.2和gradle-wrapper.properties中的distributionUrlhttps\://services.gradle.org/distributions/gra…

裝機之MBR和GPT

MBR分區 MBR的意思是“主引導記錄”&#xff0c;是IBM公司早年間提出的。它是存在于磁盤驅動器開始部分的一個特殊的啟動扇區。這個扇區包含了已安裝的操作系統系統信息&#xff0c;并用一小段代碼來啟動系統。如果你安裝了Windows&#xff0c;其啟動信息就放在這一段代碼中—…

Linux 文件打亂順序

cat in.txt | awk BEGIN{srand()}{print rand()"\t"$0} | sort -k1,1 -n | cut -f2- > out.txt sort -R in.txt > out.txt 后者要計算每行的hash&#xff0c;再排序&#xff0c;在文件內容比較多的情況下前者要比后者快得多 參考文獻&#xff1a; http://blog.…

php 計算 目錄大小,php計算整個目錄大小的方法

本文實例講述了php計算整個目錄大小的方法。分享給大家供大家參考。具體實現方法如下&#xff1a;/*** Calculate the full size of a directory** author Jonas John* version 0.2* link http://www.jonasjohn.de/snippets/php/dir-size.htm* param string $DirectoryPath Dir…

實驗報告3

中國人民公安大學 Chinese people’ public security university 網絡對抗技術 實驗報告 實驗三 密碼破解技術 學生姓名 陸圣宇 年級 2014 區隊 三 指導教師 高見 信息技術與網絡安全學院 2016年11月7日 實驗任務總綱 2016—2017 學年 第 一 學期 一、實驗目的 1&am…

裝機之windows10和ubuntu雙系統

制作系統U盤 下載Ubuntu16.04 我們首先去Ubuntu的官網下載一個Ubuntu16.04的iso鏡像文件。當然里面也有優麒麟&#xff0c;其實就是把Ubuntu16.04漢化了一下&#xff0c;個人推薦安裝Ubuntu16.04 體驗上可能好一些。 利用軟碟通制作 不會的可以查看此教程https://blog.csdn…

函數之內置函數1

什么是內置函數&#xff1a;別人已經定義好了的函數&#xff0c;我們只管拿來調用就好 locals&#xff1a;局部作用域中的變量 globals&#xff1a;全局作用域中的變量 這兩者在全局執行&#xff0c;結果一樣&#xff1b;在局部中locals表示函數內的名字&#xff0c;返回的是一…