1.指令碼格式
指令碼以#!/bin/bash開頭(指定解析器)
2.變數
$n (功能描述:n為數字,$0代表該指令碼名稱,$1-$9代表第一到第九個引數,十以上的引數,十以上的引數需要用大括號包含,如$)
$# (功能描述:獲取所有輸入引數個數,常用於迴圈)
$* (功能描述:這個變數代表命令列中所有的引數,$*把所有的引數看成乙個整體)
$@ (功能描述:這個變數也代表命令列中所有的引數,不過$@把每個引數區分對待)
3.運算子
(1)「$((表示式))」或「$[表示式]」
(2)expr + , - , *, /, % 加,減,乘,除,取餘
注意:expr運算子間要有空格
4.條件判斷
常用判斷條件
(1)兩個整數之間比較
= 字串比較
-lt 小於(less than) -le 小於等於(less equal)
-eq 等於(equal) -gt 大於(greater than)
-ge 大於等於(greater equal) -ne 不等於(not equal)
(2)按照檔案許可權進行判斷
-r 有讀的許可權(read) -w 有寫的許可權(write)
-x 有執行的許可權(execute)
(3)按照檔案型別進行判斷
-f 檔案存在並且是乙個常規的檔案(file)
-e 檔案存在(existence) -d 檔案存在並是乙個目錄(directory)
5.流程控制
1.基本語法 if對的結束是fi case的是esac do的是done
if [ 條件判斷式 ];then
程式 fi
或者 if [ 條件判斷式 ]
then
程式 elif [ 條件判斷式 ]
then
程式else
程式fi
注意事項:
(1)[ 條件判斷式 ],中括號和條件判斷式之間必須有空格
(2)if後要有空格
for (( 初始值;迴圈控制條件;變數變化 ))
do 程式
done
for 變數 in 值1 值2 值3…
do 程式
done
while [ 條件判斷式 ]
do 程式
done
5.shell工具
cut 剪下
示例切割cut.txt第一列
cut -d " " -f 1 cut.txt
sed 編輯檔案 用於增刪改查
示例 sed '/wo/d' sed.txt 刪除帶wo的行
awk 把檔案逐行的讀入,以空格為預設分隔符將每行切片,切開的部分再進行分析處理。 切開來分析
sort 檔案排序
ABAP 如何擷取字串的最後幾位
問題 這個欄位的內容長度是不唯一的 bkpf awkey belnr gjahr 字段參考關鍵 發票憑證編號 會計年度 51056248772020 去掉後四位 5105624877 後四位 2020 然後得到發票憑證編號和會計年度去關聯別的表。最後沒有發現從後邊直接擷取的方法,得到了以下兩個方法....
C 保留小數點後幾位
string.format a 保留小數點後一位 string.format a 保留小數點後兩位 string.format a 保留小數點後三位 c 保留小數字n位四捨五入 double s 0.55555 result s.tostring 0.00 點後面幾個0就保留幾位 c 保留小數字n位...
mysql 獲取字串前幾位或後幾位
mysql中一般擷取字串部分字元可使用right left substr 等函式 left right 使用模式都是第乙個引數為原字串,第二個引數為擷取長度 字串從一開始,這裡只能用正數,用負數查不出結果 例如 mysql select left asdasd 2 left asdasd 2 as ...