第四周小結

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

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

創建好后在里面寫想要運行的腳本即可,然后按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 22:14
下一篇 2017-08-06 22:29

相關推薦

  • 淺談netbios及其相關內容

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeffyyko.blog.51cto.com/28563/141086        Netbios想必大家都有接觸。對于netbios的理解,我以前…

    Linux干貨 2015-03-26
  • 第十一周:OPENSSL和DNS

    詳見我的51cto博客:http://afterdawn.blog.51cto.com/

    Linux干貨 2016-12-09
  • 推薦-Linux Namespace的一點理解

        下文的原文來自: http://blog.csdn.net/preterhuman_peak/article/details/40857117    原文寫的非常好,下文中大部分文字描述來自原文,我僅做了一點理解性的插圖和實驗部分。    &…

    Linux干貨 2016-03-28
  • 鏈接的“軟”與“硬”

    前言     類似Windows系統,Linux系統在進行文件管理時,也會引入鏈接概念。而鏈接又分為軟鏈接和硬鏈接,兩種鏈接適用于不同場合、不同用途,各有優缺點。在介紹軟硬兩種鏈接之前,需要先引入inode的概念。 Inode:     系統在管理文件時,為了有序尋址,會將元數據(metadata)和用戶數據…

    Linux干貨 2016-10-20
  • 源碼編譯安裝Apache

    編譯安裝Apache 系統環境:centos 7.2 前提: 提供開發工具及開發環境 開發工具:make, gcc等 開發環境:開發庫,頭文件 glibc:標準庫 方式: 通過“包組”提供開發組件 centos 6 [root@centos6 ~]# yum groupinstall "Develo…

    Linux干貨 2016-08-24
  • sed用法預習總結

    SED用法sed:Stream EDitor    行編輯器 sed:模式空間     默認不編輯原文件,僅對模式空間的數據做處理,將處理后的結果輸出至屏幕 sed [options] 'AdressCommand' file…   &n…

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