亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

命令行的使用

2024-06-28 14:31:38
字體:
來源:轉載
供稿:網友
  1. 命令行

(1) $符號在命令中表示引用變量,可以export設置變量。

例如查看環境變量命令:echo $PATH

此處就是通過$引用PATH變量(這是個全局變量)

例如:

d

??

當我們直接敲一個命令的時候,bash就去PATH變量記載的路徑中尋找該程序。如果想運行一個自己安裝的二進制程序,則需要先加上該命令所在的路徑。

(2) man? 命令

Man命令時專門解釋其他命令的命令

??

2.?? 這樣使用shell

2.1?? 理解目錄結構

  • 可以通過Ctrl? +? Alt? +? F1打開終端,Ctrl? +? Alt? +? F7再回到圖形界面

??

2.2?? 翻舊帳-history命令

如果想查看很久之前輸入過的命令,可以用該命令查看。默認情況下顯示前1000條命令。也可以指定要顯示的命令條數

history N

注:history命令并不像ls命令那樣是一個獨立的命令,它是一個bash的關鍵字,也就時說history命令只在特定版本的bash上有用。

??

2.3 more or less——命令的分頁顯示

[more]

More是一個用來閱讀文本的命令,它有分頁的功能。他可以從文件或者獲取的數據流中先顯示一屏,等用戶按下回車鍵的時候再顯示下一屏,直到顯示完。當然也可以不等顯示完直接按q推出。例如查看當前運行的所有進程:

ps -A | more

注意:上述命令中有一個"|"符號。該符號稱為管道符,這個符號的意思就是把前一個命令的輸出內容交給后一個命令,作為后一個命令的數據輸入。上述命令就是把ps -A輸出的那一堆字符交給more命令,然后more命令在處理之后按屏幕顯示給用戶。

[less]

less和more命令實現的功能基本一致,只不過less命令比more命令要強大一些。對于more命令之前看過的東西時不能回頭再去看得,只能往下翻頁去看,知道看完之后自動退出。而less命令可以用上下箭頭來翻閱,并且看完之后是不會自動推出的,一定要按q鍵退出。

注意:著兩個命令都可以直接查看文件

less /文件路徑/文件名

??

2.4 通配符

linux使用"*"來代表任意個字符,"?"代表任意一個字符。

??

3. shell編程

3.1 把命令行打包執行

場景:

把一張SD卡插進電腦,然后運行mount命令進行掛載:

sudo mout /dev/sdb1 /mnt/

然后把里面的所有照片拷貝進來

cp /mnt/*.jpg /home/zhanglu/Picture

之后把這些照片壓縮放在同一個目錄備份:

tar -czvf /home/zhanglu/Backup/pic.tar.gz /mnt/*.jpg

備份完了之后把卡里的文件全部刪除:

rm /mnt/*.jpg

最后卸載這個SD卡:

sudo umount /mnt/

如上,每次在拷貝照片的時候都要輸入上述好幾條命令,比較麻煩,有沒有比較簡單的批處理方法呢?

【高級批處理——shell腳本】

要寫個shell腳本很簡單,找個編輯器把上述命令按照順序拷貝進去保就OK。于是我們寫一個這樣的文件:

sudo mout /dev/sdb1 /mnt/

cp /mnt/*.jpg /home/zhanglu/Picture

tar -czvf /home/zhanglu/Backup/pic.tar.gz /mnt/*.jpg

rm /mnt/*.jpg

sudo umount /mnt/

然后保存起來隨便取個名字:dailybackup.sh。到目前為止這個腳本還不能運行,因為我們還沒有賦予他可以運行的權限,執行下面命令賦予可運行權限

chmod +x ./dailybackup.sh

這時候腳本就可以運行了。

注意:shell腳本不要求特定的擴展名,只要是文本文件并且擁有可執行權限就OK.但是我們一般還是以sh結尾。

【靈活的shell腳本】

腳本是完成了,但是比較蛋疼的是我每天打包備份的文件名可能不一樣,但是腳本中的寫死了。這時候就需要修改一下腳本。

sudo mout /dev/sdb1 /mnt/

cp /mnt/*.jpg /home/zhanglu/Picture

tar -czvf /home/zhanglu/Backup/pic`date %Y%m%d`.tar.gz /mnt/*.jpg

rm /mnt/*.jpg

sudo umount /mnt/

這回腳本中使用了"`"符號,"`"符號的意思是:先執行兩個"`"之間的命令,用執行后的輸出代替兩個"`"之間的內容哦能否,包括"`"本身。

注意:這里的"`"不是單引號" ' ",而是鍵盤上和"~"位于同一個鍵的反引號。

上述腳本中的兩個反引號的作用就是以年月日的格式打印當前時間。

??

3.2 規范的shell腳本

(1)要有必要的注釋,shell腳本中使用"#"作為注釋的開頭

(2)指明使用的shell

有時候可以看到一個shell腳本的開頭是這樣的:

#! /bin/bash

"#!"放在一起并且還出現在腳本的第一行那就不是注釋啦!這一行的意思時運行這個腳本所需要的shell。

我們linux系統中有很多的shell,比如bash,tcsh,ksh等。這些不同的shell他們的語法以及特性大多時不一樣的。因此在運行腳本的時候需要指定用哪個shell。

當然你也可以不加這一樣代碼,這時候你就要告訴系統你用的時那個shell,例如用bash運行,需要下面的命令:

bash ./dailybackup.sh

??

3.3 使用函數

Shell腳本像大多數編程語言一樣,也支持函數。如果有一段代碼需要在腳本里面反復執行多次,不必反復的寫多份,只需要將他們寫成一個函數,需要的時候直接調用就行。比如自動備份的腳本:

#!/bin/bash

#自動備份腳本

dailybackup() {

udo mout /dev/sdb1 /mnt/

cp /mnt/*.jpg /home/zhanglu/Picture

tar -czvf /home/zhanglu/Backup/pic`date %Y%m%d`.tar.gz /mnt/*.jpg

rm /mnt/*.jpg

sudo umount /mnt/

}

dailybackup #調用函數的時候不許要寫小括號

??

3.4 在shell腳本中使用變量

(1)用戶變量——新手拈來

Shell中的變量比較隨意簡單,不必聲明,隨用隨寫,如下:

value = 28

這就獲得了一個內容是28的變量,那么怎么引用這個變量呢?在引用變量的時候需要在變量名稱前面加上"$"符號,用來表示這是一個變量。例如:

#! /bin/bash

value = 28

echo value #輸出value

echo $ value ?#輸出28

所以在使用變量的時候前面一定要加上"$",否則就會被當作一般的字符串處理的。

??

不過有時候變量的引用可能會緊跟著字符串,這時候需要進行特殊處理:

#! /bin/bash

Word1 = hello

word2 = world

echo $word1BIG$word2

這時候輸出的是 helloworld,而不是helloBIGworld。因為系統把$word1BIG當作一個變量的引用了,然而我們根本沒有這個變量,因此就會打印空白。如果想讓shell理解我們的意圖這時候我們可以加上大括號

echo ${word1}BIG${word2}

??

(2)變量類型——只有字符串

在shell腳本中沒有整型,浮點型等其他的數據類型,僅僅有字符串。如果要進行數字的數學運算需要使用exPR命令

num=1

num=`expr $num + 2`

??

(3)環境變量——在哪兒都能用

上面咱們定義的變量是用戶變量,除了自己定義的用戶變量之外還有一種變量就是系統變量。比如之前見到的PATH,和HOME變量。

所謂的環境變量有點類似C語言中的全局變量,就是在整個系統中都有效。用戶變量就是只在一個腳本中有效。在其他的腳本中無法訪問。而系統變量可以在任何地方訪問。想要定義一個全局變量也很簡單,只要在變量前面加上export:

提示:環境變量在當前會話結束后失效

??

(4)特殊變量——一堆符號

除了用戶變量和系統變量外還有其他一些比較特殊的變量,這些特殊變量有以下特征:

  • 看著就比較特殊
  • 腳本執行時自動被設定
  • 不可修改

特殊變量主要就下面這些

  • $n——這里n時一個0~9的數字。這個變量代表了執行腳本所加的第n個參數,n=0代表代表腳本本身的名稱
  • $*——這個變量代表執行腳本所加的所有的參數(不包括腳本名稱本身)
  • $#——執行腳本所加的變量個數
  • $$——該腳本的PID

??

3.5 shell中的條件判斷

(1)if和fi

??

??

??

??

??


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人黄色网免费| 欧美日韩精品在线观看| 欧美xxxx18国产| 欧美成人亚洲成人| 欧日韩不卡在线视频| 亚洲成色www8888| 国产xxx69麻豆国语对白| 久久最新资源网| 在线丨暗呦小u女国产精品| 亚洲精品成人久久久| 欧美激情久久久久| 97av视频在线| 欧美风情在线观看| 91欧美精品成人综合在线观看| 成人免费直播live| 日韩高清有码在线| 91精品久久久久久| 欧美体内谢she精2性欧美| 日韩av片电影专区| 国产精品视频播放| 亚洲成av人片在线观看香蕉| 亚洲一区二区免费| 国产精品69久久久久| 午夜精品一区二区三区视频免费看| 日本国产一区二区三区| 成人网址在线观看| 亚洲品质视频自拍网| 国产欧美一区二区三区在线| 国产精品第一视频| 九九热精品视频| 毛片精品免费在线观看| 国产精品午夜视频| 日韩免费av一区二区| 国产一区欧美二区三区| 亚洲欧洲在线播放| 欧美精品在线免费观看| 亚洲精品福利免费在线观看| 国产裸体写真av一区二区| 亚洲自拍欧美另类| 国产在线精品一区免费香蕉| 国产成人福利网站| 亚洲欧美激情视频| 欧美成人免费一级人片100| 亚洲国产精品大全| 久久青草福利网站| 久久精品99久久久久久久久| 97超视频免费观看| 国产成人a亚洲精品| 全亚洲最色的网站在线观看| 亚洲人成网在线播放| 久久成人一区二区| 亚洲国产精品网站| 欧美有码在线视频| 日韩中文字幕免费| 在线电影av不卡网址| 亚洲一区二区三区久久| 555www成人网| 亚洲欧美国产精品久久久久久久| 久久99精品国产99久久6尤物| 日韩精品中文字幕在线播放| 亚洲三级免费看| 亚洲精品国偷自产在线99热| 国产精品精品视频一区二区三区| 日韩有码在线电影| 黄色成人在线免费| 欧美日韩国产丝袜另类| 97欧美精品一区二区三区| 欧美日韩亚洲一区二区三区| 亚洲风情亚aⅴ在线发布| 国产精品久久久久久中文字| 亚洲无线码在线一区观看| 91午夜在线播放| 亚洲精品美女在线观看播放| 成人午夜高潮视频| 日本国产精品视频| 国产成人avxxxxx在线看| 隔壁老王国产在线精品| 日韩欧美亚洲国产一区| 91网站免费看| 欧美超级乱淫片喷水| 成人动漫网站在线观看| 97成人精品区在线播放| 国产成人精品电影| 久久天天躁狠狠躁老女人| 亚洲有声小说3d| 国产在线拍揄自揄视频不卡99| 久久6精品影院| 日韩av在线网| 欧美午夜激情在线| 欧美日韩在线视频一区| 国产中文字幕91| 日韩有码视频在线| 亚洲欧美日韩在线一区| 国产成人在线一区二区| 日韩精品久久久久久福利| 亚洲人高潮女人毛茸茸| 日韩在线观看免费| 久久久久久国产精品美女| 国产不卡av在线免费观看| 最近中文字幕日韩精品| 日韩有码在线观看| 欧美老女人在线视频| 久久久国产成人精品| 久久久久久久久久久免费精品| 精品夜色国产国偷在线| 亚洲丝袜一区在线| 欧美肥婆姓交大片| 亚洲精品一区二三区不卡| 欧美激情国产高清| 精品久久久久久亚洲国产300| 欧美极品美女视频网站在线观看免费| 日韩欧美在线看| 国产精品午夜国产小视频| 97在线观看免费高清| 亚洲第一网中文字幕| 亚洲精品99久久久久| 国模叶桐国产精品一区| www.精品av.com| 一区二区三区回区在观看免费视频| 欧美日韩国内自拍| 欧美最猛黑人xxxx黑人猛叫黄| 国产精品久久久久久久久久尿| 国产精品一区二区三| 91视频免费网站| 欧美黄色三级网站| 久久久久久久久国产| 日韩av在线最新| 日韩av电影中文字幕| 精品国产户外野外| 美女性感视频久久久| 91久久久久久久| 精品亚洲一区二区三区四区五区| 欧美成人免费全部| 亚洲电影免费在线观看| 尤物九九久久国产精品的分类| 亚洲精品白浆高清久久久久久| 一区二区三区天堂av| 日韩精品视频在线观看网址| 亚洲精品女av网站| 96sao精品视频在线观看| 亚洲无av在线中文字幕| 日韩欧美国产高清91| 日韩精品免费综合视频在线播放| 欧美另类极品videosbest最新版本| 久久久久久久久国产| 成人在线视频福利| 国产精品999| 国产精品久久久久aaaa九色| 欧美成年人在线观看| 欧美小视频在线观看| 亚洲欧美日韩精品久久亚洲区| 黄色一区二区在线| 亚洲韩国欧洲国产日产av| 亚洲新声在线观看| 亚洲最新av在线网站| 亚洲人成在线观看| 91精品视频大全| 亚洲视频在线观看视频| xvideos亚洲| 久久久电影免费观看完整版| 欧美一级视频在线观看| 亚洲欧美日本伦理| 久热精品视频在线免费观看| 色综合天天综合网国产成人网|