怎么在Shell腳本中實現(xiàn)一個ftok函數(shù)?針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
#!/bin/shlet key=0function ftok() { pathname=$1; proj_id=$2; str_st_ino=`stat --format='%i' "${pathname}" 2>/dev/null`; str_st_dev=`stat --format='%d' "${pathname}" 2>/dev/null`; if [ "x${str_st_ino}" = "x" -o "x${str_st_dev}" = "x" ] ; then return 1; fi let st_ino=${str_st_ino} let st_dev=${str_st_dev} # 注意這里的位操作運算符需要加轉(zhuǎn)義符 let key1=${st_ino}\&16#FFFF let key2=${st_dev}\&16#FF let key2=${key2}\<\<16 let key3=${proj_id}\&16#FF let key3=${key3}\<\<24 let key=${key1}\|${key2} let key=${key}\|${key3}} function echohelp(){ echo "ftok generator" echo "Usage:ftok pathname projid" exit 5} if [ $# -ne 2 ] ; then echohelpfi sPathName=$1let nProjectID=$2 if [ "${sPathName:0:1}" != "/" ] ; then sPathName=${PWD}/${sPathName}fi if ! test -f ${sPathName} ; then echo "No File Found![${sPathName}]" exit 4fi ftok "${sPathName}" "${nProjectID}"echo ${key}
關(guān)于怎么在Shell腳本中實現(xiàn)一個ftok函數(shù)問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。