1.shell相當於windows下的的cmd提示符比較類似,可以通過shell編寫腳本,他們是在運行時解釋執行的(挺好的特性,很多東西需要在運行時候再選擇執行)
2.ls -al |more 意思是顯示當前目錄的所有文件,但是把ls的輸出通過|轉換成了more的輸入,可以換頁顯示(通過|實現數據的管道傳遞)
3.用的一般是/bin/sh是對/bin/bash的一個連接,用bash。
4.管道的重定向:文件描述符0代表標準輸入,1標準輸出,2標準錯誤輸出。
ls -l > aa.txt //把ls命令的輸出保存到文件aa.txt中。
ls -l >> aa.txt //附件的aa。txt的尾部。
如果想對標準錯誤重定向,只需要吧標準錯誤文件描述符2放到>之前,例如kaill -HUP 1234 >aa.txt 2>bb.txt //把標準輸出定向到aa,錯誤輸出定向到bb。
管道|,意思是將|前的輸出通過管道|傳輸給|後面的命令當輸入。
5.創建一個簡單的腳本:
#!/bin/bash //利用的是bash腳本
for file in *
do
if grep -q POSIX $file
fi
done
exit 0//相當於retrun了,0表示成功
6.把腳本設置爲可執行。
/bin/sh first
或者
chmod +x first //改變文件的模式
first//執行。
7.shell的語法
aa=abc;//不能用空格,所有的變量都被看做是字符串
8.AND OR列表
sta1&&sta2&&sta3,只有前面所有命令全部成功,後面纔可以執行。
sta1||sta2||sta3 持續執行,知道一條命令成功爲止,從左執行,如果返回false,則繼續,知道返回true
echo $aa // 顯示aa裏面存的值