shell 日期類與字串轉數字的基本操作

2021-10-17 19:30:20 字數 2565 閱讀 9798

字串轉換成數字有方法:

shell裡面怎麼樣把字串轉換為數字?

例如:a=「024」

let num=0123;

echo

$num

; 83

3,雙括號運算子:

a=

$((1+2

));echo

$a;

等同於:

a=

`expr 1 + 2`

日期"20210107』字串需要先擷取年月日,然後獲取數字,如"07" —>7。

# run_batch_date_type: m: monthly(run once a month)   w:weekly (obtain results: 0 for sunday, 1-6 for monday to saturday)  d:day (every day) default day type

# run_batch_date: specific batch running date .this field must be used with run_batch_date_type default : run_batch_date=1

run_batch_date_type=

"d"run_batch_date=1

# gets the day of the week for current system time

# week_day=`date -d "" +%w`

# month_day=`date -d "" +%d`

week_day=

`date -d "$end_date" +%w`

month_day=

`date -d "$end_date" +%d`if[

$run_batch_date_type

=="d"];

then

echo

"the run batch type is $ : day"

elif

[$run_batch_date_type

=="w"]&&

[ $[run_batch_date]

== $[week_day]];

then

echo

"the run batch type is $ : weekly ,the running time is weekly : $"

elif

[$run_batch_date_type

=="m"]&&

[ $[run_batch_date]

== $[month_day]];

then

echo

"the run batch type is $ : monthly ,the running time is monthly : $"

else

# exit 0

echo

"no $

$ "fi

$在轉換數字的時候,在不同的linux 環境,有時候失效。推薦使用$(())

if

[$run_batch_date_type

=="d"];

then

echo

"the run batch type is $ : day"

elif

[$run_batch_date_type

=="w"]&&

[$((run_batch_date))

==$((week_day)) ];

then

echo

"the run batch type is $ : weekly ,the running time is weekly : $"

elif

[$run_batch_date_type

=="m"]&&

[$((run_batch_date))

==$((month_day)) ];

then

echo

"the run batch type is $ : monthly ,the running time is monthly : $"

else

echo

"not at script run time. run_batch_date_type= $ run_batch_date=$,but week_day= $week_day ,month_day= $month_day"

exit 0

fi

exit 命令可以接受乙個整數值作為引數,代表退出狀態。如果不指定,預設狀態值是 0。使用$?可以接收這個退出狀態

退出狀態為 0 表示成功,退出狀態為非 0 表示執行失敗(出錯)。

注意:exit 退出狀態只能是乙個介於 0~255 之間的整數,其中只有 0 表示成功,其它值都表示失敗。

shell指令碼字串轉換成數字

shell中將字串轉換成數字

字串 字串轉數字

題目 將乙個字串轉換成數字。例如 123 123,71.02 71.02.方法一,直接呼叫庫函式atoi const char 和atof const char stoi string str include include int main 輸出結果 num int 435 num double ...

字串轉數字

注意進製,注意小數,負數,指數。小數跟指數比較繁瑣。應該對字串做限制,字串只是整數字串。否則,以下幾種情況都是會報錯 1.0x011.011,0b011.011都是錯誤的。2.0100.011實際上是十進位制的100.01。3.指數表示造成邏輯更多了。鑑於以上幾個情況考慮,為簡化,整數字串轉數字。草...

字串轉數字

看了劍指offer上面的第一道題,字串轉數字,就去查了下,有多種方法。比如可以直接用函式atoi 下面是我的 include include include include includeusing namespace std int main string a 100 int num 0 if a...