shell腳步攻略 1

2021-09-24 04:03:54 字數 2143 閱讀 1773

echo命令:

雙引號中不能放入shell中起作用的字元,如 !,!用來執行歷史命令中的某一條,如 !30 表示執行第三十條命令:

例子詳解:

echo 「hello world!」

echo -e 「1\t2\t3」

echo 『$path』

單引號,裡面的字元字面輸出,不會進行變數替換

檢視某個程序的環境變數:

cat /proc/$pid/environ

如:

cat /proc/215/environ

cat /proc/$pid/environ | tr 『\0』 『\n』

變數賦值

var=「value」

echo $var

echo &

export宣告了將由子程序繼承的乙個或多個變數,執行這個命令後,當前shell腳步執行的任何應用程式都能獲得這個變數,如:

數**算:

#!/bin/bash

no1=4

no2=5

let result=no1+no2

echo $result

let no1++

let no2--

echo $[ no1 + no2 ]

echo $[ $no1 + $no2 ]

let no1+=6

let no2-=5

echo $(( no1 + no2 ))

result=`expr 3 + 4`

echo $

result=$(expr $no1 + 5)

echo $result

輸入輸出重定向:

ls /root > cmd.log 2>&1

ls /root &> cmd.log 2

tee命令,輸出內容到檔案和stdout:

ls /root | tee root.log

cat -n test.txt | tee test.log

cat -n test.txt2 | tee -a test.log # -a ,用於追加內容

/dev/null會丟棄接收到的任何資料:

ls /root > /dev/null & 2>&1

重定向指令碼的檔案塊:

cat this is the content i want to input!

eof

alias的使用

alias

alias install=『sudo apt install』

echo 』 alias install=「sudo apt install」 』 >> ~/.bashrc

執行非別名命令:

\ls 讓ls使用最原始的定義來執行

date -s 『2019-06-04 17:40:35』

timedatectl set-time 「yyyy-mm-dd hh:mm:ss」

ntpdate -s ntpserver.com

clock -w

hwclock -w

#!/bin/bash

start=`date +%s`

sleep 6

end=`date +%s`

echo hehe=$((end-$start))

[root@localhost ~]# date +%f-%t

2019-06-04-21:39:43

CMake呼叫shell腳步

最近使用cmake編譯專案,其中需要使用第三方庫,但是每次在不同電腦上編譯時需要手動編譯第三方庫十分麻煩,因此,我寫了乙個shell腳步來編譯第三方庫,同時希望在cmake編譯時自動呼叫這個腳步編譯第三方庫。有了思路,就需要看cmake如何呼叫shell命令了。cmake可以通過execute pr...

shell腳步部署 zabbix服務

bin bash echo 關閉防火牆,selinux systemctl stop firewalld setenforce 0 dev null echo 同步系統時間 ntpdate pool.ntp.org echo 寫入阿里yum源 安裝mysql,zabbix echo 正在安裝mysq...

Shell腳步之監控iostat資料

在效能測試中,進行iostat監控資料顯示太不美觀,看起來很痛苦,如下圖 為了顯示美觀,寫個shell指令碼進行改造,如下 bin bash interval 1 if gt 0 then interval 1 fiwhile true do iostat k sleep interval done...