第四周小結

這周我們主要學習了寫腳本的簡單語法,寫了一些簡單的腳本,下面就由我來簡單介紹一下:

第一步使用文本編輯來創建腳本:第四周小結

創建好后在里面寫想要運行的腳本即可,然后按Esc—wq退出保存即可。也可以按q不保存退出;q!不保存強制退出;wq!保存強制退出。

第二步運行腳本,給予執行權限,在命令行上指定腳本的相對路徑和絕對路徑

第四周小結

對了,當在腳本里輸入內容時,要Ese—i,進入輸入模式。

第四周小結

bash -n f1.sh:bash編寫完腳本后我們可用:bashn 腳本名 (對腳本進行語法測試) ,沒錯會什么也不顯示

bash -x f1.sh :顯示腳本運行的過程

變量:

第四周小結

查看當前進程號

pstree:進程樹

ps -ef :顯示進程信息

第四周小結

echo $$:查看當前進程號

echo $PPID:查看當前的父進程

echo $SHLVL:查看當前第幾級bash,  bash–echo $SHLVL進入子bash;exit,顯示上一級bash,zhidao tuichu

 

本地變量:僅對當前SHELL有效,對子SHELL也無效

第四周小結

 

環境變量:對當前SHELL及其子SHELL均有效。

第四周小結

本地變量與環境變量的區別就是;本地變量對子shell無效,環境變量對子shell有效

 

如何查看是環境變量還是本地變量:

set:即顯示本地變量又顯示環境變量

env:只顯示本地變量

unset s :刪除變量s

.和source 只會在當前shell下執行文件,不會進入子shell

第四周小結

 

在賦值時“”時部完全轉譯

”完全轉譯

第四周小結

 

 

readonly name

declare -r name :設置只讀變量

第四周小結

readonly -p :查看進程中所有的只讀變量

位置變量:在腳本代碼中調用通過命令行傳遞給腳本的參數
$1, $2, …:對應第1、第2等參數,shift [n]換位置
$0: 命令本身
$*: 傳遞給腳本的所有參數,全部參數合為一個字符串
$@: 傳遞給腳本的所有參數,每個參數為獨立字符串
$#: 傳遞給腳本的參數的個數
$@ $* 只在被雙引號包起來的時候才會有差異

第四周小結

 

bash中的算術運算:help let
+, -, *, /, %取模(取余), **(乘方)在bc當中乘方是^
實現算術運算:
(1) let var=算術表達式
(2) var=$[算術表達式]
(3) var=$((算術表達式))
(4) var=$(expr arg1 arg2 arg3 …)   乘法時要轉譯* ,即\*
(5) declare –i var = 數值
(6) echo ‘算術表達式’

第四周小結

第四周小結

 

第四周小結

bc里的乘方只能用^;2^3

let里的乘方用**;2**3

 

echo $[$RANDOM%50]顯示的是0-50

第四周小結

 

 第四周小結

與:

真與真  真
真與假  假
假與真  假
假與假  假

只要有一個假則為假

短路與 前一個為假,則不再判斷第二個值。

真或真 真
真或假 真
假或真 真
假或假 假

只要有一個真則為真

短路或,前一個為真,則不再判斷第二個值
第四周小結

補充:ROOT權限:

root權限雖然很大,但在執行的時候文件上必須有執行權限,文件所屬人,所屬組,其他人必須要有一個執行權限,之后root才能-x出來,不然root也沒辦法,以為會默認把他當成普通文件,而普通文件本身就沒辦法執行,所以權限位有了x相當于腳本了,就可以查了。

今天先總結到這里吧,剩余沒有總結完的,我課下在看看。

原創文章,作者:menger,如若轉載,請注明出處:http://www.www58058.com/84018

(0)
mengermenger
上一篇 2017-08-06
下一篇 2017-08-06

相關推薦

  • 磁盤術語與磁盤管理

    磁盤術語與磁盤管理 磁盤術語 擴展1-4 邏輯5- sector 512 6位 sector 10位 track 1024 cylinder 8位head 256 0-1023 2^6=64 512*63*1024*256 cylinder=512*63*256 10M CHS 設備文件 磁盤設備的設備文件命名:/dev/DEV_FILE SCSI, SAT…

    Linux干貨 2017-05-15
  • CentOS啟動流程

    CentOS啟動大致流程: POST –> BootSequence –> Bootloader –> kernel –> rootfs –> switchroot –> /sbin/init –> (/etc/inittab;/et…

    Linux干貨 2017-07-12
  • 第一篇博客,以下。

    一、 linux 你好!    學習linux的心情。        又一次接觸了linux,內心還是很忐忑的。記得大二學過半學期的linux,那是一門考查課,所以可想而知學的是三天打魚兩天曬網。也不知道是怎樣的機緣,讓我在一年后又一次遇見了它。我想說,雖然你…

    2017-07-15
  • 【原創】Tengine+LUA+Nginx-GridFS+jemalloc編譯安裝

    操作系統 ubuntu 14.04 LTS Nginx-GridFS為nginx直接訪問mongoDB的擴展模塊,目前只支持到mongodb2.6.12 mongodb安裝請自己百度 #安裝依賴包保平安 apt-get install root-system-bin autoconf automake gcc c++ libgeoip-devlibxml++…

    Linux干貨 2016-11-30
  • 8.5文本處理工具及正則表達式

    一、各種文本工具     文件查看     命令:cat,tac,rev         cat optiong file       &n…

    Linux干貨 2016-08-10
  • 系統基礎之shell腳本編程詳解2

    shell腳本編程2:   在上節我們介紹了shell腳本編程,但只是介紹了基礎的內容,下面將為大家介紹shell的腳本的高級用法,判斷與循環.判斷分為兩種:if語句和case語句;循環分為三種:for語句,while語句,until語句,select語句 判斷語句:  在腳本的編寫中,我們要使用大量的數據和命令,但對于使用的數據,我們要…

    Linux干貨 2016-08-19
欧美性久久久久