Shell指令碼常用語句

2022-08-21 00:57:14 字數 2788 閱讀 6223

#指令碼測試:

window 回車是 \r\n

linux 回車是 \n

yum install -y dos2unix (軟體)

命令:dos2unix 指令碼名 -------處理

sh -x 與 set -x(開始) set +x(結束)

顯示指令碼執行過程

一.變數

1.區域性變數:只在乙個範圍內使用(普通變數)

file=`ls -l /root`

echo $

2.全域性變數:在整個linux中適用(環境變數)

echo $path

/opt/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin

#臨時新增乙個全域性變數

export file=`ls -l /root`

檢查env |grep file

#永久新增乙個全域性變數

echo 'export file=`ls -l /root' >>/etc/profile && source /etc/profile

命令:(檢查)env |grep name

file=`ls -l /root

3.特殊變數:位置變數及程序狀態變數

$0 指令碼的名字

$1 第乙個引數

$2 第二個引數

$# 引數的總個數 全部在一起吐出來

$@ 引數的總個數

$? 上一次命令是否執行正確 0(正確) 非0(錯誤)

二.操作符

1.檔案目錄判斷操作符

判斷/root目錄是否存在

(判斷) [ -d /root ]

判斷/root/oldboy.txt檔案是否存在

(判斷) [ -f /root/oldboy.txt ]

2.比較大小

[ 1 -eq 1 ] equal ==

[ 2 -ne 1 ] not equal !=

[ 2 -gt 1 ] great than >

[ 2 -ge 1 ] great equal >=

[ 2 -lt 10 ] less than <

[ 2 -le 10 ] less equal <=

3.字串判斷操作符

-z用法(字串長度為0)真

[ -z "" ]

! [ -z "haha" ]

-n用法(字串長度非0)真

[ -n "haha" ]

! [ -n "" ]

4.邏輯操作符

-a 與and,兩端都為真則真

-o 與or,有乙個真則真

!非not,相反則為真

[root@web03 ~]# [ 1 -le 2 -a 2 -gt 1 ] && echo "成立" || echo "不成立"

成立[root@web03 ~]# [ 1 -le 2 -a 1 -gt 1 ] && echo "成立" || echo "不成立"

不成立[root@web03 ~]# [ 1 -le 2 -o 1 -gt 1 ] && echo "成立" || echo "不成立"

成立[root@web03 ~]# [ 1 -le 2 -o ! 1 -gt 1 ] && echo "成立" || echo "不成立"

成立[root@web03 ~]# [ ! 1 -le 2 -o ! 1 -gt 1 ] && echo "成立" || echo "不成立"

成立三.if語句

1.單分支語句

if [條件] ;then

命令語句

fi2.雙分支語句

if [條件]

then

命令語句1

else

命令語句2

fi3.多分支語句

if [條件]

then

命令語句

elif [條件]

then

命令語句

elif [條件]

then

命令語句

else

命令語句2

fi四.case語句

case $1 in

start)

啟動命令

stop)

停止命令

restart)

停止命令

sleep 1

啟動命令

*)echo "usage: sh $0 start|stop|restart"

esac

五.while無限迴圈語句

while 條件

do命令語句

done

例子:(let 計算)

計算1到100的和

i=1sum=0

while [$i -le 100] ; then

do let sum=sum+$i

let i++

done

echo $sum

六.for迴圈語句

for i in 用於迴圈的條件

do條件

done

例:continue(條件滿足時退出本次迴圈,接著執行下乙個迴圈)

#!/bin/bash

for i in

doif [ $i -eq 3 ] ;then

continue

fiecho $i

done

echo "ok"

shell學習 常用語句

為什麼使用shell 可以快速 簡單的完成程式設計,實現自己的想法。shell非常適合編寫小的工具,因為小工具更強調的是易於配置 維護 移植等,而不是執行效率。當自己的想法確實有必要進行優化,有必要讓它更容易修改以及修正設計目的時,可以將shell編寫的工具重新用c c python等語言重新實現。...

bat指令碼常用語句

兩個冒號開頭表示注釋 語句前面新增 表示執行語句,但是不把語句顯示出來 clear 設定後面語句都不顯示,不用每句前面加 echo off 暫停並提示 請按任意鍵繼續.pause 定義變數並使用變數 注意 定義變數 左右不要有空格 set value 123 echo value 獲取命令列引數,從...

mysql常用語句 MySQL常用語句

create table student id int primary key auto increment comment 學號 name varchar 200 comment 姓名 age int comment 年齡 comment 學生資訊 修改表注釋 alter table studen...