国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

在Bourneshellscript里要怎么找出最后一個參數?

2019-11-18 17:25:39
字體:
來源:轉載
供稿:網友
由 
        Martin Weitzel <@mikros.systemware.de:martin@mwtech.uucp> 
        Maarten Litmaath  
提供的答案: 

若你能確定參數不會超過九個的話,可用: 

        eval last=/${$#} 

在符合 POSIX 標準的 shell 里,不管有多少個參數都可用上述的方法。 

底下方法是一定有用的: 

        for last 
        do 
                : 
        done 

更一般性的做法是: 

        for i 
        do 
                third_last=$second_last 
                second_last=$last 
                last=$i 
        done 

若你想做的是將最后一個參數去除或是將一堆參數的順序反過來或是取用 
第 N 個參數。底下是一個不用造出 sub
自己練習最后一個參數去除的方法。 

若允許呼叫外部指令這類造出 subprocess 的做法,代志就更好辦了。 
底下是找出 argvN: 

        N=1 

        for i 
        do 
                eval argv$N=/$i 
                N=`expr $N   1` 
        done 

要將參數的順序反過來還有一個不用造出 subprocess,有更簡單的方法。 
這個方法也可以用來去除最后一個參數, 不過要注意的是 argvN 不在是 
原來的第 N 個參數: 

        argv= 

        for i 
        do 
                eval argv$#=/$i 
                argv="/"/$argv$#/" $argv" 
                shift 
        done 

        eval set x "$argv" 
        shift
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 睢宁县| 盐亭县| 松滋市| 托里县| 德保县| 酒泉市| 台湾省| 思茅市| 新龙县| 平湖市| 温宿县| 攀枝花市| 镶黄旗| 都匀市| 巴林左旗| 神木县| 正镶白旗| 阳泉市| 合肥市| 芮城县| 高密市| 丰顺县| 海兴县| 双辽市| 昌宁县| 翁源县| 兴山县| 天津市| 武清区| 揭西县| 抚州市| 金沙县| 道真| 和静县| 桓台县| 景宁| 芒康县| 咸阳市| 玉树县| 英超| 通渭县|