- 論壇徽章:
- 60
|
獲獎公布:
精彩回復:本友會機友會攝友會 o楓葉o飄零 Forgaoqiang Fl_wolf 799029078
請以上獲獎人員在5月25日前將姓名、電話、郵箱、公司、職務(wù)、快遞地址站短給hyukhae079408,以便盡快給大家發(fā)放禮品。
話題背景:
不管哪種編程語言, 總會有某些寫法會被人認為這是編程語言本身的陷阱, 或者說是個坑,因為它貌似不符合人們的常規(guī)認知, 或者說我們想當然的認為應(yīng)該是這么做的.
今天我們就Linux shell腳本語言來探討下其所謂的”陷阱”.
我們先來看一張動圖, 我們遍歷一個目錄下的mp3文件,然而結(jié)果跟我們想象中的卻不一樣!
bashPitfalls1.gif (18.15 KB, 下載次數(shù): 2836)
下載附件
2017-03-30 10:25 上傳
看到這個圖, 你有想過, 單純的這樣寫
for i in $(ls *.mp3); do
some command $i
done
是錯的, 或者說是不嚴謹?shù)膯?
再比如:
QQ圖片20170330121300.gif (10.72 KB, 下載次數(shù): 197)
下載附件
2017-03-30 12:13 上傳
#!/bin/bash
count=0
seq 5 | while read line; do
((count++))
echo "count=$count"
done
echo "End:count=$count"
為什么最后 count 的值壓根沒變?
更多類似的"坑", 請仔細閱讀: http://mywiki.wooledge.org/BashPitfalls, 個人認為這些都是非常經(jīng)典的"坑", 然后再來探討下我們的問題.
討論問題:
1. 你認為這些真的是shell語言的"陷阱"嗎?還是說這只是我們對語言了解的不夠深入?
2. 在編碼的過程中, 你是否注意編碼的相關(guān)細節(jié)(比如引號), 以及考慮過代碼的兼容性,嚴謹性以及健壯性?
3. 最重要的一點, 你從這些所謂的"陷阱"中學到了哪些知識點?
4. 你還遇到過其他你認為是"坑"的坑嗎?
活動時間: 3月30日-4月30日
活動獎勵:活動結(jié)束后,我們將會選取5個精彩回復,送創(chuàng)意鏡頭水杯一個。
![]()
DTCC 2017 來啦!
隨著云計算和大數(shù)據(jù)時代的來臨,數(shù)據(jù)正在以前所未有的速度成為各個領(lǐng)域價值創(chuàng)造的核心驅(qū)動力。
在此背景下,國內(nèi)最受關(guān)注的數(shù)據(jù)庫技術(shù)盛會——2017第八屆中國數(shù)據(jù)庫技術(shù)大會(DTCC2017)將于2017年5月11-13日如約而至。本屆大會以“數(shù)據(jù)驅(qū)動•價值發(fā)現(xiàn)”為主題,匯集來自互聯(lián)網(wǎng)、電子商務(wù)、金融、電信、政府、行業(yè)協(xié)會等20多個領(lǐng)域的120多位技術(shù)專家,共同探討Oracle、MySQL、NoSQL、云端數(shù)據(jù)庫、智能數(shù)據(jù)平臺、區(qū)塊鏈、數(shù)據(jù)可視化、深度學習等領(lǐng)域的前瞻性熱點話題與技術(shù)。大會共設(shè)定2大主場和20個技術(shù)專場,將吸引5000多名IT人士參會,為數(shù)據(jù)庫人群、大數(shù)據(jù)從業(yè)人員、廣大互聯(lián)網(wǎng)人士及行業(yè)相關(guān)人士提供最具價值的交流平臺。
![]()
官網(wǎng)鏈接:http://dtcc.it168.com/
購票鏈接:http://dtcc.it168.com/goupiao.html
歡迎掃碼關(guān)注DTCC官方微信,獲取最新信息!
![]()
|
|