Time of Update: 2017-01-18
1、使用find的參數實現複製代碼 代碼如下:[root@xiaobb mnt]# find . -maxdepth 1 -size +1000000c./sys.tar.gz./install.tar.bz2./CTeX_2.9.0.152_Full.exe./php-5.3.6.tar.gz[root@xiaobb mnt]# ls -lhtotal 1.3G-rw-r--r-- 1 root root 1.1G 2011-04-28 11:35
Time of Update: 2017-01-18
複製代碼 代碼如下:#!/bin/bash ping_monitor() { host_=(203 204 205 207 208 209 210 212 213 214 215 216 217 218 219 220 221) ping_count=3 called=(13000000001 13000000002 13000000003)&
Time of Update: 2017-01-18
複製代碼 代碼如下:#!/bin/bash#main---network=192.168.1ping_count=3IP=1:>IP_use:>IP_idle:>ping_actionecho "`date "+%Y%m%d %H:%M:%S"`----->指令碼開始執行......"while [ $IP -lt 255 ]dohost=$network.$IPecho "-------->開始檢測$host伺服器通迅是否正常,ping次數$ping_count.
Time of Update: 2017-01-18
複製代碼 代碼如下:#!/bin/bash#********************************##並發後台運行fun ##for wanggy 2012-01-25
Time of Update: 2017-01-18
註冊一個系統服務,開機自啟動.1 指令碼編寫#vim test.sh複製代碼 代碼如下:#!/bin/bash #description: hello.sh #chkconfig: 2345 20 81 EXEC_PATH=/usr/local/ EXEC=hello.sh DAEMON=/usr/local/hello.sh
Time of Update: 2017-01-18
一、算術操作複製代碼 代碼如下: + - * / % 二、關係操作複製代碼 代碼如下: < > >= <=
Time of Update: 2017-01-18
這裡說的“瑞士軍刀”是指那些簡單的一句命令就能完成其它進階語言一大片代碼才能完成的工作。下面的這些內容是Quora網站上Joshua Levy網友的總結: 通過sort/uniq擷取檔案內容的交集、合集和不同之處:假設有a、b兩個文字檔,檔案本身已經去除了重複內容。下面是效率最高的方法,可以處理任何體積的檔案,甚至幾個G的檔案。(Sort對記憶體沒有要求,但也許你需要用 -T 參數。)可以試著比較一下,你可以看看如果用Java來處理磁碟上檔案的合并,需要用多少行代碼。 複製代碼 代碼如下:
Time of Update: 2017-01-18
關於shell中的for迴圈用法很多,一直想總結一下,今天網上看到上一篇關於for迴圈用法的總結,感覺很全面,所以就轉過來研究研究,嘿嘿...複製代碼 代碼如下:for((i=1;i<=10;i++));do echo $(expr $i \* 4);done在shell中常用的是 for i in $(seq 10)複製代碼 代碼如下:for i in `ls`for i in ${arr[@]}for i in $* ; dofor File in /proc/sys/net/ipv4
Time of Update: 2017-01-18
安裝了centos6.0,由於選擇了最小安裝,很多包沒有安裝,因此一些常用的命令也不支援,如下:# scp -bash: scp: command not found我的解決方案是:在一台運行正常的CentOS 5.6伺服器上找到scp所在的包:##---以下命令在運行正常的CentOS 5.6上執行 複製代碼 代碼如下:# which scp /usr/bin/scp # rpm -qf /usr/bin/scp
Time of Update: 2017-01-18
1. ftp自動登入批量下載檔案。複製代碼 代碼如下:#####從ftp伺服器上的/home/data 到 本地的/home/databackup#####!/bin/bashftp -n<<!open 192.168.1.171user guest 123456binarycd /home/datalcd /home/databackuppromptmget *closebye!2. ftp自動登入上傳檔案。複製代碼 代碼如下:####本地的/home/databackup to
Time of Update: 2017-01-18
比如比較字串、判斷檔案是否存在及是否可讀等,通常用"[]"來表示條件測試。注意:這裡的空格很重要。要確保方括弧的空格。筆者就曾因為空白格缺少或位置不對,而浪費好多寶貴的時間。if ....; then....elif ....; then....else....fi[ -f "somefile" ] :判斷是否是一個檔案[ -x "/bin/ls" ] :判斷/bin/ls是否存在並有可執行許可權[ -n "$var" ] :判斷$var變數是否有值[ "$a" = "$b" ] :判斷$a和$
Time of Update: 2017-01-18
&&命令1 && 命令2:如果這個命令執行成功&&那麼執行這個命令。[jb]/usr/xxxx/ytcclb>ls -l test.sql-rwxr--r-- 1 xxxx group 225 Nov 15 14:12 test.sql[jb]/usr/xxxx/ytcclb>cp test.sql test.bak && echo "coping file ok!"coping file ok![jb]/usr/xxxx/ytcclb>ls -l
Time of Update: 2017-01-18
1、原始暴力的方法複製代碼 代碼如下:myLinux:/home/zhanhailiang/public_html # killall nginx2、溫柔點的方法尋找指定進程的pid,並kill|kill -USR1 掉複製代碼 代碼如下:myLinux:/home/zhanhailiang/public_html # ps -ef|grep tcpServer|grep -v grep|awk '{print $2}'|xargs kill -9等價方法:複製代碼 代碼如下:myLinux:/
Time of Update: 2017-01-18
讀取一個檔案,把每一行賦值給一個數組的變數,然後用for迴圈列印出來複製代碼 代碼如下:#!/bin/shi=1SUM=`sed -n '$=' tmp.txt` #計算檔案的總行數echo "$SUM"while read linedo arr[$i]="$line" i=`expr $i + 1`done < tmp.txtecho "$i"i=1for i in `seq $SUM` ;do
Time of Update: 2017-01-18
本文為大家介紹linxu shell中數組的相關知識,並舉了很多例子供參考,包括數組的複製,計算,刪除,替換等,是學習shell 數組的不可多得的好文章。數組的聲明:1)array[key]=value # array[0]=one,array[1]=two2)declare -a array # array被當作數組名3)array=( value1 value2 value3 ... )4)array=( [1]=one [2]=two [3]=three ...
Time of Update: 2017-01-18
本篇文章主要介紹了"shell 判斷字串是否為數字",主要涉及到shell 判斷字串是否為數字方面的內容,對於shell 判斷字串是否為數字感興趣的同學可以參考一下。#!/bin/bash ## 方法1a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers 第一個-n是shell的測試標誌,對後面的串"`sed -n '/^[0-9][0-9]*$/p'`" 進行測試,如果非空,
Time of Update: 2017-01-18
1、登入主機並輸入ssh-keygen -t rsa 提示Enter file in which to save the key (/root/.ssh/id_rsa): 輸入/root/.ssh/sea_rsa 根據提示輸入相關路徑名和檔案名稱並產生兩個檔案(之後的兩個選項直接斷行符號) 2、把那個沒有.pub的檔案copy出來用puttygen轉換一下產生windows下putty可用的key(這裡指sea_rsa,選擇puttygen的Conversions的Import
Time of Update: 2017-01-18
在營運情境下,我們經常需要在伺服器上用Regex來匹配IP地址。shell和其它程式設計語言一樣,也可以使用正則分組捕獲,不過不能使用 $1或\1這樣的形式來捕獲分組,可以通過數組${BASH_REMATCH}來獲得,如${BASH_REMATCH[1]},${BASH_REMATCH[N]}下面以ip="121.0.2.2"為例,shell指令碼代碼如下(當然,你要做成更通用互動指令碼,可以通過expect來實現):複製代碼 代碼如下:#!/bin/baship="121.0.2.2"if [
Time of Update: 2017-01-18
本機多個IP 複製代碼 代碼如下:ifconfig | awk '/inet/{print $2}' | awk -F: '{print $2}' 首先,先用這個來著 複製代碼 代碼如下:CheckIPAddress() { echo $1 > /tmp/tmpserverip
Time of Update: 2017-01-18
一個關於如何在指定檔案大於1GB後,自動刪除的問題。 批處理代碼如下: 複製代碼 代碼如下:#!/bin/bash # 當/var/log/syslog大於1GB時 # 自動將其備份,並清空 # 注意這裡awk的使用 if ! [ -f /var/log/syslog ] then echo "file not exist!" exit 1 fi if [ `ls -l /var/log/syslog|awk '{print $5}'` -gt $((1024*1024)) ] then