Time of Update: 2017-01-13
線上伺服器一般都會遇到各種各樣的日誌切割。之前一直沒有發布類似詳細指令碼文章,這次就彌補下網站相關內容。萬變不離其宗,下邊簡單講解一下兩個日誌切割,其他服務日誌的切割也可以這樣實現.Tomcat日誌catalina.out切割小指令碼:#!/bin/bash#cut tomcat catalina.outyesterday=`date +"%F" -d "-1 days"`cd
Time of Update: 2017-01-13
很多朋友使用了 thin 或者 rbenv之後,發現無法愉快的讓rails 隨著linux 的啟動而啟動.記住幾點即可:1. 讓PATH中包含 rbenv的路徑2. 調試時多查看: /var/logs/boot.log 檔案具體過程如下:1. 建立檔案 /etc/init.d/start_rails_servers : (注意下面代碼前幾行不可缺少)#!/bin/bashsource /root/.bashrcexport PATH=/root/.rbenv/
Time of Update: 2017-01-13
有一個朋友問我如何大量建立使用者和設定密碼 ,我就簡單給他寫了兩個指令碼,讓他自己參考下並自己根據實際情況進行修改,畢竟他需要的使用者名稱和密碼都是實際生產環境的。這裡分兩種情況,一種是測試for迴圈大量新增使用者,一個是根據實際生產環境進行大量新增。分別寫一下案例如下:1,for添加指定類型使用者以及設定隨機密碼。指令碼作用:大量新增user1-10使用者並設定隨機8位元隨機密碼#!/bin/bash#test add user and set passwdfor n in `seq
Time of Update: 2017-01-13
先基本瞭解一幾條命令一下指令碼都是基於上面日誌格式的,如果你的日誌格式不同需要調整awk後面的參數。分析日誌中的UserAgent 代碼如下複製代碼 cat access_20130704.log | awk -F """ '{print $(NF-3)}' | sort | uniq -c | sort -nr | head -20 上面的指令碼將分析出記錄檔中最多的20個UserAgent分析日誌中那些IP訪問最多
Time of Update: 2017-01-13
一、bash中的變數類型本地變數:僅對當前shell有效,對其子shell無效變數賦值:name=valuename=$username=`Command` ,name=$(Command):這裡需要注意的是“ 和 $()的意義是不同的。從下圖可以總結如下:如果將命令的執行結果賦值給一個參數時,且包含多對反引號嵌套的時候,最好外層用$()#!/bin/bash#Sum=$(echo `seq $1 $2` | tr " " "+" | bc)&
Time of Update: 2017-01-13
在Shell中(我這裡是Bash),其實沒有傳統意義上的“資料類型”,把任何變數中存的值都是作為字元組成的“字串”。當然,通過declare可以聲明某個變數是整型、數組等類型。其中,數組就是本文要專門講的了。在Bash中,僅支援一維數組,當然通過關聯陣列(associative array)的形式可以類比多維陣列。1. 數組的聲明用 declare -a array 聲明array是一個數組,用declare -A a_array
Time of Update: 2017-01-13
之前寫過一個這樣的博文,但因為Ecvps倒閉跑路了,所以我丟失了兩個月的資料,那篇文章也就丟失了,但是我也更新了這個指令碼的方法,將有內容產生密鑰鏈條和無內容自動隨機產生密鑰鏈條兩種,控制方法是A和B兩種.A是隨機# !/bin/bashrandom() { index=0 str="" t=`grep '((?=[\x21-\x7e]+)[^A-Za-z0-9])'` for i in {a..z}; do
Time of Update: 2017-01-13
給各位llustrator軟體的使用者們來詳細的解析分享一下設計精緻貝殼效果繪製教程。教程分享: 好了,以上的資訊就是小編給各位llustrator的這一款軟體的使用者們帶來的詳細的設計精緻貝殼效果繪製教程解析分享的全部內容了,各位看到這裡的使用者們,小編相信大家現在是非常的清楚了繪製教程了吧,那麼各位就快去按照小編的教程自己去試著繪製下吧。
Time of Update: 2017-01-13
這個例子說明了怎樣在Linux下shell指令碼中從資料檔案讀取特定的域(field)並進行操作。例如,假設檔案employees.txt的格式是{employee-name}:{employee-id}:{department-name},以冒號進行劃分,如下所示。$ cat employees.txt Emma Thomas:100:Marketing Alex Jason:200:Sales Madison Randy:300:Product Development Sanjay
Time of Update: 2017-01-13
查看進程在佔用swap分區的指令碼命令指令碼如下: 代碼如下複製代碼 for i in `cd /proc;ls |grep "^[0-9]"|awk ' $0 >100'` ;do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps ;done |sort -k2nr 查看佔用swap的進程 代碼如下複製代碼 #
Time of Update: 2017-01-13
訊號是一種處理序間通訊機制,它給應用程式提供一種非同步軟體中斷,使應用程式有機會接受其他程式活終端發送的命令(即訊號)。應用程式收到訊號後,有三種處理方式:忽略,預設,或捕捉。進程收到一個訊號後,會檢查對該訊號的處理機制。如果是SIG_IGN,就忽略該訊號;如果是SIG_DFT,則會採用系統預設的處理動作,通常是終止進程或忽略該訊號;如果給該訊號指定了一個處理函數(捕捉),則會中斷當前進程正在執行的任務,轉而去執行該訊號的處理函數,返回後再繼續執行被中斷的任務。在有些情況下,我們不希望自己的sh
Time of Update: 2017-01-13
系統:centos 5.x指令碼內容:cat kingate.sh 代碼如下複製代碼 #!/bin/bashkingate=`ps -C kingate --no-header|wc -l`file=`find /usr/local/kingate/var/kingate.pid |wc -l`if [ "$kingate" = "1" ];thenecho "kingate is
Time of Update: 2017-01-13
指令碼 first (測試樣本1) 代碼如下複製代碼 #!/bin/bashecho 'your are in first file' 問)在當前指令檔中調用另外一個指令檔?方法一: 使用 source指令碼 second (測試樣本2) 代碼如下複製代碼 #!/bin/bashecho 'your are in second file'source first 方法二: 使用 . 代碼如下複製代碼 指令碼
Time of Update: 2017-01-13
原來的指令碼: 代碼如下複製代碼 #!/bin/bashfile="/root/newfile/"list="/root/sqlbak"ls -l $list/ |awk '{print $9}'|while read linedocp -r $list/$line $filedone 修改後的指令碼: 代碼如下複製代碼 #!/bin/bashfile="/root/newfile/"list=
Time of Update: 2017-01-13
什麼時候使用Shell因為Shell似乎是各UNIX系統之間通用的功能,並且經過了POSIX的標準化。因此,Shell指令碼只要“用心寫”一次,即可應用到很多系統上。因此,之所以要使用Shell指令碼是基於: 簡單性:Shell是一個進階語言;通過它,你可以簡潔地表達複雜的操作。 可移植性:使用POSIX所定義的功能,可以做到指令碼無須修改就可在不同的系統上執行。
Time of Update: 2017-01-13
指令碼內容: 代碼如下複製代碼 vi iptables-reset.sh#!/bin/bash#Powered by blog.slogra.comport=`iptables -vL|grep ssh|awk '{split($NF,a,":");print a[2]}'|wc -l`if [ $port = 1 ];thenecho "ok!"else/etc/init.d/iptables startsleep
Time of Update: 2017-01-13
//把20140321_files.txt檔案中每行路徑中檔案的內容 action 改為 action_begin,sed -i "s/action/action_begin/g" `cat 20140321_files.txt`//把 20140321_files.txt 中的檔案內容 tags 替換為 tags.phpsed -i "s/tags/tags.php/g" `ls
Time of Update: 2017-01-13
Shell中可能經常能看到:>/dev/null 2>&1 eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print $4}'` 1>/dev/null 2>/dev/null命令的結果可以通過%>的形式來定義輸出/dev/null 代表空裝置檔案 > 代表重新導向到哪裡,例如:echo
Time of Update: 2017-01-13
字元:12345abcde拆分成:12345abcde方法echo 12345abcde | awk -F ” ‘{for(i=1;i<=NF;i++)print $i}’echo 12345abcde | sed ‘s/./&n/g’echo 12345abcde | grep -Po ‘.’echo “12345abcde” |
Time of Update: 2017-01-13
原理跟簡單:遞迴,iconv 代碼如下複製代碼 #!/bin/shTGT="source_rst"function fe_convert() { for file in `ls $1` do if [ -d $1"/"$file