bash預定義變數 read(獲取鍵盤輸入)

2021-07-30 21:41:53 字數 1249 閱讀 2866

程式執行的返回值:

$? :最後一次執行命令的返回狀態,如果正確執行,則返回0;

如果返回為非零(具體數值由命令決定),則上一條命令執行不正確

執行完一條命令之後,立馬敲入echo $?,可得到返回值。

例如:ls 執行之後,再敲入echo $?,可以得到0

前面說到的邏輯或:|| -->ls || echo yes ;前面一條語句正確執行,才執行後一條語句。這裡就是通過執行命令的返回值來判斷的

邏輯與:&& --> ls qwe && echo no 也是同樣的道理

$$:返回當前程序的pid號;

$!:返回後台的程序pid號;

可以通過乙個簡單的shell來展示一下:

sl.sh

#!/bin/bash

ehco "dang qian de pid: $$"

find / hello.sh &

echo "hou tai de pid: $!"

chmod 755 sl.sh,然後再執行:./sl.sh;可以得到當前的測試的結果

read -n

read -p 「please input name 」 name #-p表示輸出提示資訊 read [選項] 變數名

read -t 30 #-t 表示等待時間單位為秒 -t 30 表示30秒,若30秒後沒有輸入資料終止執行指令碼

read -s #隱藏資訊

echo -e 「\n」 換行符

#!/bin/bash

read -p "please input your name:" -t 30 name

#等下輸入,如果超過30秒不輸入,就終止當前命令

echo $name

read -p "please input your password:" -s pwd

#輸入的值是隱藏的,看不見的,但是在sh裡面還是可以獲取到的,並且輸出的

echo -e "/n"

echo $pwd

read -p "please input your *** [m/f]:" -n 1 ***

#意思就是只能輸入乙個字元,且輸入之後立馬執行

echo -e "/n"

echo $***

執行

chmod 755 read.sh

./read.sh

預定義變數

不包含副檔名的目標檔名稱。所有的依賴檔案,以空格分開,並以出現的先後為序,可能包含重複的依賴檔案。第乙個依賴檔案的名稱。所有的依賴檔案,以空格分開,這些依賴檔案的修改日期比目標的建立日期晚。目標的完整名稱。所有的依賴檔案,以空格分開,不包含重複的依賴檔案。如果目標是歸檔成員,則該 變數表示目標的歸檔...

PHP SEVER預定義變數

server php self 當前正在執行指令碼的檔名,與 document root相關。server argv 傳遞給該指令碼的引數。server argc 包含傳遞給程式的命令列引數的個數 如果執行在命令列模式 server gateway inte ce 伺服器使用的 cgi 規範的版本。...

GLSL預定義變數

glsl為不同的渲染階段定義了一些特定的變數。這些預定義 也叫做 內建變數 有特定的屬性。所有的預定義變數都以gl 開頭。使用者定義的變數不能以此開頭。下面分類進行介紹。1 頂點著色器輸入 in int gl vertexid in int gl instanceid gl vertexid是當前被...