shell環境設定:
shell也是應用程式,工作于使用者模式;運作為程序;
shell程序用于提供指令行界面:提供一系列工作特性,有些特性可以自行設定;
bourn: shell, bsh --> sh
BSD: Berkeley System Distribution, csh
korn --> ksh
bash --> Bourn Again SHell, bash
/etc/shells: tcsh, dash
/sbin/nologin: 不能登入
# useradd -s /sbin/nologin mongodb
解釋器:
了解其它指令,并且讓指令執行起來;
了解語句,并且能根據流程控制機制讓語句按需執行;
編譯器:
了解源程式,并且能夠将源程式轉換為二進制格式,而後讓其夠執行;
程式檔案:源代碼
由解釋器負責讀取一句執行一句;
事先,将整個程式轉換成二進制格式,而後執行;
程式開發語言:
解釋型語言:perl, python, ruby, bash
也稱為動态語言
編譯型語言:C, C++, C#
也稱為靜态語言
變量:記憶體空間,可用于存儲資料
變量類型:資料存儲格式,資料表示範圍;
整型
浮點型
字元型
布爾型
整數:11, 4bits, 8bits
1011
字元:ASCII, 所有基本字元共128個,至少7bits來表示所有的基本字元;
1:8bits
1: 8bits
浮點:11.00,近似值
單精度
雙精度
要使用變量,其步驟通常是:
1、聲明:要指定其類型;
聲明的同時,給其一個初始值,這個叫做變量的初始化;
2、指派:
int V=3;
bash: 互動式接口,提供程式設計環境
變量:
弱類型語言:
1、不強制區分變量類型,無論存儲什麼資料,預設均以字元格式存儲;
2、不需要事先聲明;用到時,直接使用,直接指派;
定義變量:
[set] VAR_NAME=Value
引用變量:
${VAR_NAME}
撤消變量:
unset VAR_NAME
bash變量類型:
本地變量:隻對目前shell程序有效;對其子shell及其它shell都無效;
局部變量:local VAR_NAME=Value,僅對局部代碼有效,其作用範圍不包括目前shell的所有位置;
環境變量:export VAR_NAME=Value, 對目前shell及其子shell有效;
位置變量:$1, $2, ...
特殊變量:$$, $!, $#, $?
bash變量也可聲明,甚至可以指定類型:declare
declare -i VAR_NAME: 聲明一個整型變量
declare -x VAR_NAME: 聲明一個環境變量
declare -a VAR_NAME: 聲明一個數組
bash檢視環境變量的指令:
printenv
export
檢視所有變量:
set
變量引用:${VAR_NAME}
變量替換:隻有在雙引号中才能實作,
bash的引号:
雙引号:弱引用,可以實作變量替換;
單引号:強引用,不替換,而顯示字元串本身;
反引号:指令引用, ``, $()
`date`
bash特性:
變 量
快捷鍵
指令别名
指令行展開:{}, ~
管道
輸入、輸出重定向
程式設計
指令行補齊
路徑補全
bash的快捷鍵:
Ctrl+a: 跳至指令行首
Ctrl+e: 尾
Ctrl+u: 删除指令行首至目前光标所在處的内容
Ctrl+k: 删除目前光标所有處至指令行尾的内容
Ctrl+l: 清屏,相當于clear指令