libvirt-python簡介:http://www.ibm.com/developerworks/cn/linux/l-libvirt/
ovirt-node下載地址:http://www.ovirt.org/Subprojects
***********************************************NO.1********************************************************
如果文件在之前並不存在,那麼就創建它.如:
1 : > data.xxx #文件"data.xxx"現在被清空了.
2
3 #與 cat /dev/null >data.xxx 的作用相同
4 #然而,這不會產生一個新的進程,因爲":"是一個內建命令.
***********************************************NO.2********************************************************
/dev/null,外號叫無底洞,你可以向它輸出任何數據,它通喫,並且不會撐着!
/dev/zero,是一個輸入設備,你可你用它來初始化文件。該設備無窮盡地提供0,可以使用任何你需要的數目——設備提供的要多的多。他可以用於向設備或文件寫入字符串0。
/dev/null------它是空設備,也稱爲位桶(bit bucket)。任何寫入它的輸出都會被拋棄。如果不想讓消息以標準輸出顯示或寫入文件,那麼可以將消息重定向到位桶。
***********************************************NO.3********************************************************
注意:在[[]]結構中,將沒有文件擴展或者是單詞分離,但是會發生參數擴展和命令替換.
1 file=/etc/passwd
2
3 if [[ -e $file ]]
4 then
5 echo "Password file exists."
6 fi
注意:使用[[]],而不是[],能夠阻止腳本中的許多邏輯錯誤.比如,儘管在[]中將給出一個錯誤,
但是&&,||,<>操作還是能夠工作在一個[[]]test之中.
注意:在if後邊,test命令和[]或[[]]都不是必須的.如下:
1 dir=/home/bozo
2
3 if cd "$dir" 2>/dev/null; then # "2>/dev/null" hides error message.
4 echo "Now in $dir."
5 else
6 echo "Can't change to $dir."
7 fi
if命令將返回if後邊的命令的退出碼.
***********************************************NO.4********************************************************
邏輯與
1 if [ $condition1 ] && [ $condition2 ]
2 # 與: if [ $condition1 -a $condition2 ] 相同
3 # 如果condition1和condition2都爲true,那結果就爲true.
4
5 if [[ $condition1 && $condition2 ]] # 也可以.
6 # 注意&&不允許出現在[ ... ]中.
注意: 在一個 管道 中, 可能有一種把stdin 重定向 到一個文件中的更有效的辦法, 這
種方法比 cat文件的方法更有效率.
1 cat filename | tr a-z A-Z
2
3 tr a-z A-Z < filename # 效果相同,但是處理更少,
4 #+ 並且連管道都省掉了.
***********************************************NO.5********************************************************
tac 命令, 就是 cat的反轉, 將從文件的結尾列出文件.
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED
原因:一臺主機上有多個Linux系統,會經常切換,那麼這些系統使用同一ip,登錄過一次後就會把ssh信息記錄在本地的~/.ssh/known_hsots文件中,切換該系統後再用ssh訪問這臺主機就會出現衝突警告,需要手動刪除修改known_hsots裏面的內容。
***********************************************NO.6********************************************************
trap 'command' EXIT 或 trap 'command' 0
通過捕獲ERR信號,我們可以方便的追蹤執行不成功的命令或函數,並輸出相關的調試信息,以下是一個捕獲ERR信號的示例程序,其中的$LINENO是一個shell的內置變量,代表shell腳本的當前行號。
$ cat -n exp1.sh
1 ERRTRAP()
2 {
3 echo "[LINE:$1] Error: Command or function exited with status $?"
4 }
5 foo()
6 {
7 return 1;
8 }
9 trap 'ERRTRAP $LINENO' ERR
10 abc
11 foo
其輸出結果如下:
$ sh exp1.sh
exp1.sh: line 10: abc: command not found
[LINE:10] Error: Command or function exited with status 127
[LINE:11] Error: Command or function exited with status 1
在調試過程中,爲了跟蹤某些變量的值,我們常常需要在shell腳本的許多地方插入相同的echo語句來打印相關變量的值,這種做法顯得煩瑣而笨拙。而通過捕獲DEBUG信號,我們只需要一條trap語句就可以完成對相關變量的全程跟蹤。
以下是一個通過捕獲DEBUG信號來跟蹤變量的示例程序:
$ cat –n exp2.sh
1 #!/bin/bash
2 trap 'echo “before execute line:$LINENO, a=$a,b=$b,c=$c”' DEBUG
3 a=1
4 if [ "$a" -eq 1 ]
5 then
6 b=2
7 else
8 b=1
9 fi
10 c=3
11 echo "end"
其輸出結果如下:
$ sh exp2.sh
before execute line:3, a=,b=,c=
before execute line:4, a=1,b=,c=
before execute line:6, a=1,b=,c=
before execute line:10, a=1,b=2,c=
before execute line:11, a=1,b=2,c=3
end
從運行結果中可以清晰的看到每執行一條命令之後,相關變量的值的變化
***********************************************NO.7********************************************************
ctrl+c是強制中斷程序的執行。
ctrl+z的是將任務中斷,但是此任務並沒有結束,他仍然在進程中他只是維持掛起的狀態,用戶可以使用fg/bg操作繼續前臺或後臺的任務,fg命令重新啓動前臺被中斷的任務,bg命令把被中斷的任務放在後臺執行.
例如:當你vi一個文件是,如果需要用shell執行別的操作,但是你又不打算關閉vi,因爲你得存盤推出,你可以簡單的按下ctrl+z,shell會將vi進程掛起~,當你結束了那個shell操作之後,你可以用fg命令繼續vi你的文件。
ctrl-d 不是發送信號,而是表示一個特殊的二進制值,表示 EOF
***********************************************NO.8********************************************************
ls -ltr 按時間反序排序當前文件夾中文件(-r反序)
2、在當前文件夾內查找最近一天內更改的文件(包括子文件夾):
find . -type f -mtime -1
1天以前更改的文件:
find . -type f -mtime +1
最近10分鐘內狀態變化的文件:
find . -type f -cmin -10
***********************************************2014.3.6********************************************************
- [root@liaohg Downloads]# lspci | grep Wireless
- 03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8191SEvB Wireless LAN Controller (rev 10)
打開網站後,在search框中輸入 RTL8192SE,在搜所結果裏面找出自己的驅動下載下來
3.接下來就是解壓,make & make install
kernel-headers-2.6.32-279.el6.i686
kernel-devel-2.6.32-279.el6.i686
使用命令uname -r查看核心版本
如果在make時出現,/lib/modules/2.6.32-279.el6.i686/build/ 無該文件或目錄
使用ln -s targets name 創建對應到/usr/src/kernels/'uname -r'/的軟鏈接
[root@promote 2.6.32-358.el6.i686]# ln -s /usr/src/kernels/2.6.32-431.5.1.el6.i686/ build
[root@promote 2.6.32-358.el6.i686]# pwd
/lib/modules/2.6.32-358.el6.i686
)
4.加載無線模塊到內存中.
- [root@liaohg Downloads]# modprobe r8192se_pci
- [root@liaohg Downloads]# lsmod | grep pci
r8192se_pci 462298 0 - [root@liaohg Downloads]# iwconfig
wlan0 Link encap:Ethernet HWaddr 88:9F:FA:FF:DF:94
inet6 addr: fe80::8a9f:faff:feff:df94/64 Scope:Link
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:1776 (1.7 KiB)
Interrupt:17 Memory:f7e88000-f7e88100
[root@liaohg Downloads]#
***********************************************2014.3.6********************************************************
centos 6.x 添加rpmforge源--- CentOS 6.x 安裝rhythmbox mp3插件
在http://dag.wieers.com/packages/rpmforge-release/ 找到一系列的RpmForge-release包。
[root@localhost 桌面]#rpm -Uvh rpmforge-release-0.5.3-1.el6.rf.i686.rpm
CentOS 6.x 安裝rhythmbox mp3插件
[root@localhost ~]# yum -yinstall gstreamer-ffmpeg gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly
應用程序 ——> 影音 ——> rhythmbox 音樂播放器
(注:是
rpmforge 源裏有 rhythmbox mp3插件)
***********************************************2014.3.6********************************************************
centos下firefox的flash插件的安裝與卸載
一定要注意系統的位數,是32位的還是64位的,我這裏介紹的是32爲的,64位的自行下載對應軟件安裝即可
查看系統版本的命令:getconf LONG_BIT 返回32就是32位,返回64就是64位
(一)用rpm來安裝
首先下載rpm安裝包,選擇的是32bit的最新安裝包wget http://fpdownload.macromedia.com/get/flashplayer/pdc/11.1.102.55/flash-plugin-11.1.102.55-release.i386.rpm
然後安裝rpm -i flash-plugin-11.1.102.55-release.i386.rpm
如此使用rpm方式flash插件就安裝好了。如果想選擇其他版本可以訪問http://get.adobe.com/cn/flashplayer/
說說這個rpm包怎麼卸載,兩條命令rpm -e flash-plugin
rpm -qa |grep ^flash-plugin
如果第二條命令返回爲空怎麼表示卸載乾淨了。
第一條命令rpm -e flash-plugin是卸載命令,第二條rpm -qa |grep ^flash-plugin是驗證是否卸載成功了。
(二) 插件式
其實第二種我也不知道該如何命名,暫時先這麼叫吧,如有確切或者更好的,請不吝賜教。
同樣要先下載安裝包wget http://fpdownload.macromedia.com/get/flashplayer/pdc/11.1.102.55/install_flash_player_11_linux.i386.tar.gz
然後解壓tar zxvf install_flash_player_11_linux.i386.tar.gz
然後進入 cd install_flash_player_11_linux.i386
然後將libflashplayer.so文件移動到~/.mozilla/plugins/即可,其他文件不要。
如果不知道~/.mozilla/plugins/路徑,可以使用find / -name plugins
來查找,我得到的結果是
/etc/skel/.mozilla/plugins
/usr/lib/qt-3.3/plugins
/usr/lib/mozilla/plugins
/usr/lib/xulrunner-1.9.2/plugins
/usr/lib/krb5/plugins
所以就把libflashplayer.so移動到/usr/lib/mozilla/plugins文件夾下就OK了。
移動命令使用mv。具體請百度 google。
(三)瀏覽器選擇安裝法
最近有網友反映插件雖然安裝了但是還是提示未安裝,主要原因是版本選的不對。
爲了能更好的解決這個問題,現加一個方法。
用firefox打開youtube或者其他視頻網站,會提示你安裝flash,然後點安裝,會顯示找不到(找到了更好),然後點左下角的那個鏈接,然後在新打開的網頁裏點,安裝缺失插件,就跳到Adobe的網站了,在那裏選擇相應版本的插件下載安裝就好了。
下載的時候選擇.rpm那個大小在6M多吧,安裝方法同(一)