第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Bash 腳本 `function` 怎樣捕獲帶空格的參數(shù)?

Bash 腳本 `function` 怎樣捕獲帶空格的參數(shù)?

開心每一天1111 2019-04-23 15:36:02
比如寫一個Bash函數(shù),創(chuàng)建并進入一個目錄newdirfirst-demo/,用alias無法完成的,可如果我用的是$1進行傳參mkdir$1&&cd$1,像newdirsecond\demo/就會出錯,結(jié)果是創(chuàng)建兩個目錄,進入到空格前的名字對應(yīng)的目錄.請問怎樣能解決這個問題?
查看完整描述

2 回答

?
慕神8447489

TA貢獻1780條經(jīng)驗 獲得超1個贊

對bash編程不熟,說個無關(guān)的,我認(rèn)為更廣泛的原則是,對于shell有特殊含義的字符,在使用的時候還是應(yīng)該用引號,這應(yīng)該是shell通用的原則。mkdir'lolomg'
                            
查看完整回答
反對 回復(fù) 2019-04-23
?
猛跑小豬

TA貢獻1858條經(jīng)驗 獲得超8個贊

shell有特殊含義的字符,在使用的時候還是應(yīng)該用引號,這應(yīng)該是shell通用的原則不過要補充幾點:對于你上面的創(chuàng)建并進入一個目錄的腳本來說,mkdir$1并不能創(chuàng)建目錄seconddemo/,因為Shell傳遞給腳本的$1是seconddemo,于是mkdir$1相當(dāng)于mkdirseconddemo,會創(chuàng)建兩個目錄。所以需要使用雙引號,即:mkdir"$1".用./newdir執(zhí)行腳本時,Shell會fork一個子進程并調(diào)用exec執(zhí)行這個腳本,因此cd..命令改變的是子Shell的PWD,而不會影響到交互式Shell的pwd。如果想在當(dāng)前shell進程執(zhí)行腳本,可以使用.或者source命令。腳本如下:mkdir"$1"&&cd"$1"用source或者.執(zhí)行結(jié)果:$pwd/home/user/etc$source./a.sh'newdir'$pwd/home/user/etc/newdir
查看完整回答
反對 回復(fù) 2019-04-23
  • 2 回答
  • 0 關(guān)注
  • 334 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號