Time of Update: 2015-02-06
標籤:linux 登入 shell站在使用者登入的角度來說,SHELL的類型:登入式shell: 正常通過某終端登入 su - USERNAME su -l USERNAME非登入式shell: su
Time of Update: 2015-02-06
標籤:設定檔如下
Time of Update: 2015-02-05
標籤:welcome 使用者登入 37.調整變數的屬性唯讀變數:使用readonly命令readonly 變數名稱readonly其他用法readonly或readonly -p:顯示目前具有唯讀屬性的變數列表readonly -f 函數名稱:設定該函數式不可修改readonly -a 陣列變數:設定-a後接的變數名是唯讀數組唯讀變數:使用declare650) this.width=650;" src="http://s3.5
Time of Update: 2015-02-05
標籤:shell###判斷linux系統是32位還是64位 可以用“getconf WORD_BIT”和“getconf LONG_BIT”獲得word和long的位元,64位系統中應該分別得到32和64 if [ $(getconf WORD_BIT) = ‘32‘ ] && [ $(getconf LONG_BIT) = ‘64‘ ] ; then echo 64else &
Time of Update: 2015-02-07
標籤: 通過進程2載入shell進程,詳解execve,這篇文章,最後shell程式開始執行的線性地址是128MB,由於free_page_tables,已經釋放了第32位頁目錄項。所以會產生缺頁異常。程式會執行,如下代碼: do_no_pagevoid do_no_page(unsigned long error_code,unsigned long address)//address為128MB{int
Time of Update: 2015-02-04
標籤:shell判斷檔案,目錄是否存在或者具有許可權 #!/bin/sh myPath="/var/log/httpd/" myFile="/var /log/httpd/access.log" #這裡的-x 參數判斷$myPath是否存在並且是否具有可執行許可權 if [ ! -x "$myPath"]; then mkdir "$myPath" fi #這裡的-d 參數判斷$myPath是否存在 if [ ! -d "$myPath"]; then
Time of Update: 2015-02-04
標籤:檔案比較子-e filename 如果 filename存在,則為真 [ -e /var/log/syslog ]-d filename 如果 filename為目錄,則為真 [ -d /tmp/mydir ]-f filename 如果 filename為常規檔案,則為真 [ -f /usr/bin/grep ]-L filename 如果 filename為符號連結,則為真 [ -L /usr/bin/grep ]-r filename 如果 filename可讀,則為真 [ -r /
Time of Update: 2015-02-07
標籤: 一直以來都對execve到底做了什麼,總是犯迷糊,原來看Linux核心設計的藝術,這部分講解的非常不細緻,這次結合趙博士的書,重新理解了這部分代碼。 首先列出代碼,如下:if (!(pid=fork())) {//進程1建立進程2close(0);if
Time of Update: 2015-02-06
標籤:出現這種情況,通常都是在window下寫好的shell指令碼,拷貝到linux機器執行 才會出現原因就是:windows下每一行的結尾是\n\r,而在linux下檔案的結尾是\n這樣window寫編輯的shell指令碼拷貝到linux下時每一行的結尾就會多出來一個字元\r這個\r字元會被顯示為^M所以就會出現錯誤提示" /bin/bash^M: bad interpreter: No such file or dire",字面意思就是/bin/bash^M: 壞的解譯器:
Time of Update: 2015-02-05
標籤:shell rhce7 rh254 Shell指令碼的參考書從基礎到進階可以找幾百本出來,豆子這裡過為了整個學習筆記的完整性,還是厚顏把最最基本的文法回顧一遍。最基本包括變數,比較,運算子,條件陳述式,迴圈語句。變數分為本地變數,環境變數,位置變數首先看看本地變數, 變數名=值的方式賦值,不過只在當前的shell裡面有效比如,子shell裡面就無法識別了650) this.width=65
Time of Update: 2015-02-05
標籤:大量匯出 batch export informatica shell script #!/bin/bash # -----------------------------------------------------------------------# Script Name: inf_impobj.sh#
Time of Update: 2015-02-06
標籤:參數處理說明$#傳遞到指令碼的參數個數$*以一個單字串顯示所有向指令碼傳遞的參數$$指令碼啟動並執行當前進程ID號$!後台啟動並執行最後一個進程的ID號[email protected]與$#相同,但是使用時加引號,並在引號中返回每個參數。$-顯示Shell使用的當前選項,與set命令功能相同。$?顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤。MD duanwf 23742 CDR_CALL_YYYYMMDD
Time of Update: 2015-02-06
標籤:由於使用for來讀入檔案裡的行時,會自動把空格和分行符號作為一樣分隔字元,因為當行裡有空格的時候,輸出的結果會很亂,所以……cat input.txt |while read line> do> echo $line> done或者:while read line> do> echo $line> done < input.txt再舉個實際點的例子(把所有目錄許可權修改為755,所有檔案為644):# find ./ -
Time of Update: 2015-02-04
標籤:hello world 30.tee:讀取標準輸入,然後由標準輸出顯示,並把這些資料存放區在指定的檔案中執行本命令,test.txt若已經存在,會被清空,若不存在則會建立一個新檔案,結束操作ctrl+D[[email protected] ~]# tee test.txthello my world!hello my world![[email
Time of Update: 2015-02-05
標籤:bash shell 格式化輸出 字串抽取 按列合并 需求來源:預設的ip link
Time of Update: 2015-02-05
標籤:shell linux 非互動 靜默 修改密碼 今天在寫一個shell指令碼的時候發現需要設定使用者的密碼,而設定密碼是互動,這樣在指令碼中顯然是不太好的,因此上網尋找資料,發現了以下兩種常見的非互動式設定密碼的方式:1:使用chpasswd
Time of Update: 2015-02-04
標籤:jdk安裝上代碼:#!/bin/bash#Engine server install#Write by guojr#Set Engine server dirjdk=jdk-6u34-linux-x64-rpm.binchmod o+x $jdk && echo -e "\n" | ./$jdk;(cat <&
Time of Update: 2015-02-06
shell退出,返回小結,shell退出小結shell中常用的返回有:exit,breakm,returnexit:其實每條命令執行完成後,都要返回一個執行狀態的!如果執行成功,就返回 0如果執行不超過,返回非零!舉例應用:用在shell指令碼中做真假判斷,如果前一句執行OK,那shell接著執行下一條命令;如果前面錯誤,返回值非零,那直接退出shell;break:僅能用在shell內部迴圈,如if ...then..else
Time of Update: 2015-02-06
shell退出,返回小結shell中常用的返回有:exit,breakm,returnexit:其實每條命令執行完成後,都要返回一個執行狀態的!如果執行成功,就返回 0如果執行不超過,返回非零!舉例應用:用在shell指令碼中做真假判斷,如果前一句執行OK,那shell接著執行下一條命令;如果前面錯誤,返回值非零,那直接退出shell;break:僅能用在shell內部迴圈,如if ...then..else
Time of Update: 2015-02-07
Shell 指令碼中非互動式修改密碼,shell中非修改密碼 今天在寫一個shell指令碼的時候發現需要設定使用者的密碼,而設定密碼是互動,這樣在指令碼中顯然是不太好的,因此上網尋找資料,發現了以下兩種常見的非互動式設定密碼的方式:1:使用chpasswd