(自己翻譯的程式設計百例 測試環境ubuntu 12.04lts)
1.finding programs in the path
shell指令碼使用環境變數(像mailer 和 pager)會有乙個乙個隱藏的危險,有時候,這些單詞的設定會只指向不存在的程式,例如,如果你決定使用使用pager設定去顯示指令碼的輸出,若不使用一些硬編碼型別的特許的工具,你怎麼能夠保證你的parge值是有效的?畢竟,如果那是乙個無效的程式,你的指令碼會崩潰。第乙個指令碼會給出這樣乙個示例:探測乙個指令碼程式是否在使用者的路徑下,並且,它還會顯示其他的一些示例,包括指令碼函式和變數的分片。
源**如下:(也給出了相應的解釋)
#!/bin/bash
in_path()
checkforcmdinpath()
與var匹配成功位置之後的所有內容(/****--->(*****))
#%表示返回上次結果與var匹配成功後的所有內容(/****--->(/))
if [ "$}"="/" ];then
if [ ! -x $var ]; then #-x判斷是否有可執行的許可權
return 1
fielif !in_path $var $path; then #進行判斷
return 2
fifi
}if [ $# -ne 1 ]; then #判斷使用者輸入的數字是否有效
echo "usage: $0 command" >&2 ;
exit 1
ficheckforcmdinpath "$1"
case $? in #$?表示上次執行後的狀態
0) echo "$1 found in path" ;;
1) echo "$1 not found for not executable" ;;
2) echo "$1 not found in path" ;;
esac
exit 0
檢測乙個目錄或檔案是否存在
可以用win32檔案查詢 win32 find data 來查詢檔案或者資料夾是否存在,也可以用pathfileexists來判斷。getfileattributes和pathisdirectory可以用於判斷檔案是否是目錄。建立檔案可以用createdirectory或makesuredirect...
python中判斷乙個檔案是否存在
你可以使用os.path.isfile,如果存在,它會返回true.如下 import os.path os.path.isfile fname 或者使用os.path.exists import os.path os.path.exists file path isfile和exists有一些區別...
判斷乙個類是否存在
我們在開發的過程中難免會用到低版本中沒有的類,如果我們想讓我們的應用盡可能的相容多個版本,我們需要考慮 如果我們使用的類在低版本中沒有怎麼辦呢。class pkclass nsclassfromstring pkaddpassesviewcontroller if pkclass else nsst...