[root@node1 ~]#cat a.sh針對檔案的比較測試: 針對字串的比較測試:#! /bin/bash
read -p "please input:"a b
expr $a +$b
[root@node1 ~]#sh a.sh
please input:a bexpr: 非整數引數[root@node1 ~]#[root@node1 ~]#cat a.sh
#! /bin/bash
read -p "please input:"a b
expr $a + $b&>/dev/null[root@node1 ~]#sh a.sh
please input:a b
[root@node1 ~]#條件測試語法:格式1: test 測試表示式
格式2: [ 測試表示式 ]
格式3: [[測試表示式 ]]test 用法:[root@node1 ~]#ll
總用量 8
-rw-------. 1 root root 1256 5月 6 2018 anaconda-ks.cfg
-rwxrwxrwx. 1 root root 68 11月 22 22:45a.sh
[root@node1 ~]#[root@node1 ~]#[root@node1 ~]# test -f a.sh && echo 1 || echo 0
1[root@node1 ~]# test ! -f a.sh && echo 1 || echo 0
0[root@node1 ~]# arg=[root@node1 ~]# test -n "$arg" &&echo 1 ||echo 0
0[root@node1 ~]# test ! -n "$arg" && echo 1 || ech0 0
1[root@node1 ~]#單中括號用法:[root@node1 ~]#ll
總用量 8
-rw-------. 1 root root 1256 5月 6 2018 anaconda-ks.cfg
-rwxrwxrwx. 1 root root 68 11月 22 22:45a.sh
[root@node1 ~]# [ -f a.sh ] && echo 1 || echo 0
1[root@node1 ~]# [ ! -f a.sh ] && echo 1 || echo 0
0[root@node1 ~]#[root@node1 ~]#ll
總用量 8
-rw-------. 1 root root 1256 5月 6 2018 anaconda-ks.cfg
-rwxrwxrwx. 1 root root 68 11月 22 22:45a.sh
[root@node1 ~]# [ -f a.sh ] || echo 1 //||代表不成立才執行
[root@node1 ~]# rm -f a.sh
[root@node1 ~]# [ -f a.sh ] || echo 1
1[root@node1 ~]#雙中括號用法:[root@node1 ~]# [ -f file && -d root ] && echo 1 || echo 0
-bash: [: 缺少 `]'
0[root@node1 ~]# [[-f file && -d root ]] && echo 1 || echo 0
0[root@node1 ~]#
第四部分 方法3
對employee.calculatepay方法的呼叫是問題的原因。我們需要的是晚繫結。晚繫結 latebinging 意味著編譯器到執行時才選擇要執行的方法。為了迫使編譯器呼叫向上型別轉換得到的物件的方法的正確版本。我們使用了兩個關鍵字 virtual 和override.必須在基類方法中使用vi...
第四部分 方法5
linux繼承了unix作業系統結構清晰的特點。在linux下的檔案結構非常有條理。但是,上述的優點只有在對linux相當熟悉時,才能體會到。vmlinuz 我們已經知道,每乙個linux都有乙個核心 vmlinuz 我們在這個核心上新增上可以完成各種特定功能的模組,每個模組就體現在 linux中各...
JavaScript筆記(第四部分)
命 名 空 間 管理變數,防止汙染全域性,適用於模組開發 之 前 的 解 決 辦 方 已經不用 命名空間 var org xuming department2 lisi 了解即可 用 法 org.department1.jicheng.name 簡化 var jc org.department1.j...