Linux菜鳥筆記——BASH(二)
實驗環境:Ubantu 16.04
一、變數鍵盤讀取(read)
read xxx #從鍵盤獲取輸入,存到xxx變數中
read #從鍵盤獲取輸入,存到REPLY變數中
echo -n “請輸入您的名字:” #”-n”是列印完不換行的意思
read name
echo “歡迎你,$name”
前兩句程式碼等同於:
read -p “請輸入您的名字:” name #獲取輸入時先列印提示資訊
二、陣列(array)
1、定義一個數組
array1=(aa bb cc dd)
2、列印其中一個元素
echo ${array1[0]} #列印結果:aa
3、列印所有元素
echo ${array1[*
或:echo ${array1[@]}
4、列印所有下標
echo ${!array1[*]} #列印結果:0 1 2 3
或:echo ${!array1[@]}
5、列印陣列的元素個數
echo ${#array1[*]} #列印結果:4
或 echo ${#array[@]}
三、宣告(declare)
1、宣告變數為只讀
注:變數為只讀時無法修改值、刪除(unset)
2、單引號內忽略特殊意義(也就是說’’內是什麼就打印出什麼)
3、反引號
等同於echo “xxxxxxx $(hostname) xxxxxxxxx” #hostname
四、與檔案系統及程式的限制關係(ulimit)
1、檢視所有限制
ulimit -a
2、限制單個檔案大小
ulimit -f 20480#只對當前bash有效,退出後即恢復為unlimited
dd if=/dev/zero of=file bs=1M count=30 #會提示“檔案大小超出限制,因為上一句限制了最大為20M”
五、變數內容的刪除、替換
1.變數刪除:
path=$PATH
r=${path#*sbin:} #”#”表示從頭部開始刪,直到第一個”sbin:”,
r=${path##*sbin:} #”##”表示從頭部開始刪,直到最後一個”sbin:”
r=${path%bin*} #”%”表示從尾部開始刪,直到遇到第一個”bin”
r=${path%%bin*} #”%%”表示從尾部開始刪,直到最後一個”bin”
2.變數替換
r=${xx-”aaa”}
如果xx存在且值不為空:xx賦給r;
如果xx存在且值為空:xx賦給r;
如果xx不存在:”aaa”賦給r;
r=${xx:-”aaa”}
如果xx存在且值不為空:xx賦給r;
如果xx存在且值為空:”aaa”賦給r;
如果xx不存在:”aaa”賦給r;
r=${xx:=”aaa”}
如果xx存在且值不為空:xx賦給r;
如果xx存在且值為空:”aaa”賦給r、xx;
如果xx不存在:”aaa”賦給r、xx;
r=${xx:?”aaa”}
如果xx存在且值不為空:”aaa”賦給r;
如果xx存在且值為空:列印”aaa”;
如果xx不存在:列印”aaa”;
r=${xx:+”aaa”}
如果xx存在且值不為空:xx賦給r;
如果xx存在且值為空:;
如果xx不存在:”aaa”不會賦給r;
六、命令別名設定
alias#顯示目前已有的別名
alias aa=”ifconfig eth0”#設定別名
unalias#取消別名
七、歷史命令
history #檢視歷史命令(預設儲存1000個,通過環境變數$HISTFILESIZE修改)
!120 #快速呼叫序號為120的歷史命令
history -c #清除所有歷史命令
相關推薦
Linux菜鳥筆記——BASH(二)
實驗環境:Ubantu 16.04 一、變數鍵盤讀取(read) read xxx #從鍵盤獲取輸入,存到xxx變數中 read #從鍵盤獲取輸入,存到REPLY變數中 echo -n “請輸入
Linux菜鳥筆記——BASH(三)
實驗環境:Ubantu 16.04 一、路徑與命令查詢順序 type -a echo #打印出來的資訊中,從上到下表示執行命令的優先順序由高到低 二、bash的登入與歡迎資訊 1、登入前的資訊修改: vim /etc/issue vim /etc/issue.n
linux菜鳥基礎學習(二 ) 上篇
com lower mar 刪除 .com [] 根目錄 col test 一.linux系統結構 首先我們學習linux的系統結構,linux系統中一切皆文件! 由上圖,可以看到linux是一個倒樹結構linux中所有的東西都是文件這些文件都在系統頂級目錄“/” /就是
linux菜鳥基礎學習 (二) 中篇
文件中 rec 動作 mission 退出vim 第一個 51cto delet 關鍵字搜索 一.man的使用 man ->>manual ###man是手冊縮寫man man #####查看man命令的幫助man passwd
linux菜鳥基礎學習 (二) 下篇
顯示名稱 保存 數字 sudoer linux 刪除用戶 arr 組的建立 51cto 1.用戶理解 用戶就是系統使用者的身份在系統中用戶存儲為若幹竄字符+若幹個系統配置文件用戶信息涉及到的系統配置文件:/etc/passwd ###用戶信息用戶:密碼:uid:gi
菜鳥初學redis(二)
ack 沒有 進制 序列化 cnblogs key demo 二進制 循環 如果你的redis可以在myeclipse上運行小demo了,那麽可以繼續學習了 redis Java String 實例 string是redis最基本的類型,一個key對應一個value。 st
linux菜鳥基礎學習(一)
導致 erp redhat ado water 切換用戶 學習 方法 x86 熟悉linux環境 1.虛擬機的控制虛擬機是在真機上建立的,為何要建立虛擬機,主要是防止由於錯誤操作導致不可挽回的結果。[kiosk@foundation0 Desktop]$ rht-vmctl
linux菜鳥基礎學習 (三)
sha then 系統安全 .com img ugo 目錄下的文件 文件讀寫 The 文件權限 1.文件屬性的查看 練習:ls 查看當前目錄下的文件和目錄ls -l 查看當前目錄下的文件和目錄屬性ll 查看當前目錄下的文件和目錄屬性 stat test 查看文件
linux菜鳥基礎學習 (四)
工作 進程優先級 監控系統 emctl 負載 img http 狀態 界面 一.進程 1.進程定義: 進程就是cpu未完成的工作. 2.ps命令 psa ##關於當前環境的所有進程x| -A ##所有進程f ##顯示進程從屬關系e ##顯示進程調用環境工具的
linux菜鳥基礎學習 (四) openssh-server
eat users onf 遠程 use edi exc 4.2 mark openssh-server 1.openssh-server 功能:讓遠程主機可以通過網絡訪問sshd服務,開始一個安全shell 2.客戶端連接方式 ssh 遠程主機用戶@遠程主機ip[root
linux菜鳥基礎學習 (五) 系統日誌
unix 18C 關閉 系統 0.11 cron rate 保存 日誌類 系統日誌 1.系統日誌默認分類 /var/log/messages ##系統服務及日誌,包括服務的信息,報錯等等/var/log/secure ##系統認證信息日誌/var/log/mai
linux菜鳥基礎學習 (六) 網絡
ice ping 9.1 del system fff 設定 ane sco linux下的網絡配置 1.什麽是IP ADDRESS internet protocol ADDRESS ##網絡協議地址 ipv4 internet protocol ver
linux菜鳥基礎學習 (六) 網路
linux下的網路配置 1.什麼是IP ADDRESS internet protocol ADDRESS ##網路協議地址 ipv4 internet protocol version 4 1.2x32 ip是由32個0和1組成 11111110.1111111
linux菜鳥基礎學習 (四) openssh-server
openssh-server 1.openssh-server 功能:讓遠端主機可以通過網路訪問sshd服務,開始一個安全shell 2.客戶端連線方式 ssh 遠端主機使用者@遠端主機ip[[email protected] ~]# ssh [email protected]Th
java程式設計師菜鳥進階(二)oracle基礎詳解(二)oracle查詢語句和資料排序
本文所以練習都是基於oracle自帶提供的一個數據庫進行的。資料庫中包含員工表emp。部門資訊表dept。員工工資工總表下面是三個表的表結構:一:基本查詢語句1.最簡單的查詢所有列語句Select * from emp;2.查詢指定列表的查詢語句Select empno ,e
Linux菜鳥筆記——BASH之變數
shell:指令碼直譯器,常見的shell有sh、bash、csh、ksh等。 bash:shell的一種,是linux的預設shell指令碼直譯器。終端提供了人和shell互動的介面。 一、檢視系
鳥哥的Linux私房菜習題與解析(二)
第二部分 Linux檔案、目錄與磁碟格式 第六章 Linux的檔案許可權與目錄配置 1、/bin和/usr/bin及/sbin目錄所放置的執行檔案有什麼不同 /bin目錄下放置的是在單使用者維護模式下還能夠被操作的命令,這些命令都可以被root和普通使用者所使,如 cat
java程式設計師菜鳥進階(十三)linux基礎入門(一)vmvare下安裝linux RedHat圖解(超詳細篇)
對於linux,我從大二就想學習一下,但一直苦於無從下手,所以一直拖到現在,鑑於筆者瞭解很多人在linux入門的困難在何處,所以我認為本套入門基礎文章還是挺適合想學習linux的朋友,本系列文章大約十篇文章左右,近期會不斷更新下來,沒有linux基礎但又想學習linux的朋友可以關注一下本系列
Mybatis(二)[SqlMapConfig檔案配置、輸入輸出引數對映解讀] 菜鳥日記--day05(上)
Mybatis(二)[SqlMapConfig檔案配置、輸入輸出引數對映解讀]–day05 上 一、SqlMapConfig配置 1.properties屬性配置 1)單條屬性配置 不建議使用 <properties > <property name=
菜鳥成長記(十三)----- 草草啟程,半途終了?
下一步 後臺 十分鐘 一道 一是 算法題 ceo 奮鬥 同時 來北京兩個多月了,也在現在這家遊戲公司上了一個多月的班了,對於目前自己這狀態真的是撞墻的心都有了。我不知道我到底是怎麽了,一念清醒九念操蛋,心裏面清楚的知道自己應該做什麽,不應該做什麽,但是就是怎麽也控制不住