4, shell 第四部分

2022-07-29 23:12:22 字數 2879 閱讀 3153

[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...