最近開始了嵌入式在linux下的學習,作為了乙個初學者,還是意料之中的遇到了很多問題,針對這些問題我自己在網上找了些資料,並且給出了自己的想法!
怎麼在虛擬機上安裝linux這個還是很簡單的,網上找資料也是一大把,我是在vm上裝的,感覺過程還是比較容易,只是要等個40分鐘左右,這不能算是乙個問題。(我用到的linux版本是ubuntu 10.04)
在裝好linux之後涉及到了一些更新:
【語言文字包的更新】
【linux指令】
相比於windows的圖形介面,linux在操作起來還是比較遜色的;不過linux自有其好處(小巧穩定....)。要想更
快捷、更熟練的使用linux的話,就不得不掌握好更多更多的指令,必須的呀!(當你用一條條應接不暇的指令
在"終端"中對檔案進行隨心所遇的操作時,我只想說:這種感覺真好!)
前幾天在taobao上面閒逛,發現了一寶貝--鳥哥的linux私房菜;好像人氣很高呀!是個台灣同胞寫的,很詳細很
用心,是本不錯的linux入門書,可是為什麼叫"鳥哥",表示費解!為了明天更美好,我已經開始著手看了...
【重定向、管道】
重定向:
先說說檔案描述符,分為三種:標準的輸入(像鍵盤);標準的輸出(像顯示器);標準錯誤,不是很懂?(我估計是在程式的測試或執行中出現的已被預料會出現的錯誤吧~)
系統預設的輸入輸出都是接到標準的i/o,如果你想要讓輸入輸出到指定的檔案當中去的時候--需"重定向"。如果我想把輸入輸出的資訊重定向到檔案file1中,在"終端"(應用程式--附件--終端)操作如下:
ls > file1 (回車,下面就省了,每次輸入條指令就回車下;不想多寫)
或者 ls -li > file1 (-li : )
以上兩種在檔案過載時,就會將上一次的資訊覆蓋掉,如果需要每次都保留輸入輸出的資訊的話那就如下寫:
ls -li >> file1 這樣每次的都可以得到保留。(到底上限是多少我也沒做過多的實驗,只要檔案大小在硬碟的空間大小之內就沒有問題吧)
管道:用於給多個程序之間提供資訊傳遞的通道。(就寫這點吧!以後遇到了再補充)
【變數】
變數的定義不想多說。在linux中取變數時需要加乙個 "$" (規定的);(程式寫在檔案中,操作在"終端"下);小舉一例:字串比較
#!/bin/sh
echo "your name:"
read str
if [ "$str" = "mengzi" ]
then
echo "yes,yuo are mengzi!"
else
echo "no,who you are ?"
fi申明:mengzi(猛子是我綽號,很剛猛吧,其實我很善良...heihei)
程式中:$ ( ... )單括號的話表示放的是命令。若是 $ (( ... ))表示取的是變數,主要是設涉及到一些復合運算;小舉一例說明下:算術比較,加法
#!/bin/sh
read x
echo $x
x = $(($x + 1))
echo $x
關於單括號表示命令:寫個關於函式運用的例子吧
#!/bin/sh
foo()
echo "script starting"
result = $(foo)
echo --------------------------
echo $result
echo "script ended"
在這個例子中可以看到 $(foo)實際上就是條呼叫foo函式的命令。
【關於空格】
案例:在進行shell程式編譯時,搞的我崩潰,有時候就算是按著書上的例子乙個字母敲還是編譯錯誤。我表示壓力很大呀!
後來才發現是我的程式設計習慣誤導了我,因為無論是在進行賦值還是條件判斷時,只要是涉及到 + - * /的地方我都會習慣性的用空格隔開;可是到了shell中可就行不通了,那種莫名其妙的錯誤促使我思考。而且我也小小的總結了條經驗:
在做"條件判斷"時,需要加空格:if 空格[空格"$x"空格=空格"mengzi"空格]
在做"賦值"時,不需要加空格:x=0
【如有錯別字,純屬正常,見諒!】
by: 猛子 2010.11.
待續.....
EFCore 入門遇到的幾個問題
public voidconfigureservices iservicecollection services json 檔案 connectionstring 查詢官方文件得知 json 配置的字串少乙個s,connectionstring connectionstrings 還遇到一次,加了s...
Linux中的幾個問題
明天期末考試,就把往年試卷上的敘述題總結一下 1.如果乙個設定使用者id程式未執行任何改變程序的實際使用者id和有效使用者id的系統呼叫,那麼執行該程式的程序,它的實際使用者id和有效使用者id各是什麼?答 實際使用者id在登入時取自口令檔案中的登入項,如果沒有執行任何改變實際使用者id和有效使用者...
Linux驅動面試的幾個問題
1 字元型驅動裝置你是怎麼建立裝置檔案的,就是 dev 下面的裝置檔案,供上層應用程式開啟使用的檔案?答 mknod命令結合裝置的主裝置號和次裝置號,可建立乙個裝置檔案。評 這只是其中一種方式,也叫手動建立裝置檔案。還有udev mdev自動建立裝置檔案的方式,udev mdev是執行在使用者態的程...