什麼時候用shell
- 簡單、靈活、高效,小問題的剋星
- 自動化管理
- unix/linux系統中移植性好
- 不需要編譯
什麼時候不用shell
- 計算密集型任務(用C/C++)
- 大型複雜工程,數據庫操作,結構化編程,大規模文件操作,圖形化相關處理,數據結構複雜,直接操作硬件IO/socket等任務
- 安全相關的任務
- 跨平臺使用的
shell知識點
- 使用#!/bin/sh 作爲默認的shell 程序。
- 標準輸入stdin和標準輸出stdout,標準錯誤輸出stderr。
- 輸入重定向< , cat 就是將輸入重定向到對應文件實現的。
- 輸出重定向>(覆蓋文件內容),>>(追加到原文件後面)。
- 管道 | 的作用是在一個命令的標準輸出和另一個命令的標準輸入之間建立一個通道。
- $表示變量替換,即用其後面指定的變量的值來代替變量。
- \爲轉義字符,不對\後面的那個字符進行特殊處理,只是當做普通字符
- ” “雙引號括起來的字符,除$,倒引號(`)和反斜線(\)仍保留其特殊功能外,其餘字符均作爲普通字符對待。
- ’ ‘由單引號括起來的字符都作爲普通字符出現。
- ` ` 倒引號括起來的字符串被shell解釋爲命令行,shell會先執行該命令,並以它的標準輸出結果取代整個引號部分。