linux shell指令碼基礎知識學習_linux shell

Shell指令碼:1、#!  指定指令碼執行的shell2、# 注釋 3、命令或文法結構echo "輸入內容"echo 輸出空行執行:1、shell 指令碼   sh example2、給shell指令碼執行許可權   chmod u+x example案例:example  sysinfo.sh 3abc  x  不能以數字開頭abc3ABC3環境變數-大寫 命令執行結果賦值變數使用

Linux裡awk中split函數的用法小結_linux shell

The awk function split(s,a,sep) splits a string s into an awk array a using the delimiter sep.set time = 12:34:56set hr = `echo $time | awk '{split($0,a,":" ); print a[1]}'` # = 12set sec = `echo $time | awk '{split($0,a,":" ); print a[3]}'` # = 56#

awk中讓人鬱悶的system()函數_linux shell

發現一個特尷尬的事實。我辛辛苦苦去百度資料,想用rewrite實現針對不同標題來源站故障後的自動跳轉功能,但整個思路裡遺漏了一個嚴重的問題。按我的思路,針對請求的url進行一次curl,然後根據http_code去改寫url或者原樣輸出——這也就意味著,每一個請求,squid都回源去取一次header。那麼對於來源站點來說,前面squid的緩衝率,就是0%!完全沒有效果。得重新想過辦法……難道去看squid原始碼?汗本著有頭有尾善始善終的原則,決定還是把原先那個雞肋想法寫完。根據squid權威指

用shell+sendmail實現伺服器監控警示小指令碼_linux shell

這種email警示指令碼遍地都是,很多用的sendmail、postfix,感覺有些大材小用了;也有些用perl的NET::SMTP和Authen::SASL模組發信的,不過我perl用的不好,老發出些莫名其妙的郵件來(比如if(a>1){print(a);},最後郵件裡的顯示的是0.99……);最後採用sendEmail這個成型的perl程式發信警示,而即時監控部分迴歸shell,終於完成。複製代碼 代碼如下:wget <a

批量修改ssh配置的expect指令碼_linux shell

第一思路,用iptables把外網ssh的包DROP掉;第二思路,用tcpwrapper把sshd的allow寫死;第三思路,修改sshd_config,只監聽內網請求。由於一些說不清楚的原因,iptables的辦法沒法用;而tcpwrapper佔用CPU資源較多;所以最後決定用第三種辦法。公司伺服器比較多,而且根據隨機登入查看的結果,sshd_config內容居然還太不一樣~~手工幹了一天,改了兩組伺服器後,終於下定決心要整個全自動指令碼出來幹活…… 目前的辦法是這樣的:cat

分享awk變數$0的妙用_linux shell

指令碼內容:複製代碼 代碼如下:#!/bin/bashfor ip in `cat ip.lst`do./ssh.exp $ip > /dev/null 2&>1doneNK=`awk 'BEGIN{bs=4000000}/access/{if($1>bs){nk=NR-1;print nk}}' exp.log`for nnk in $NKdoawk -F"[@|']" 'NR=='"$nnk"' {print $2}'

Shell指令碼實現刪除郵件隊列_linux shell

最近遇到了一個麻煩事:機器上郵件隊列裡老是被塞滿,但是又不知道是什麼地方發郵件寫入的,十分蛋疼,沒辦法,只有臨時處理一下了,寫了個刪除郵件的指令碼rm_mqueue.sh。複製代碼 代碼如下:#/bin/bash ###################################### #  touched by lingyun1 on 2014-12-01  # ######################################

Shell指令碼實現非法IP登陸自動警示_linux shell

伺服器的安全穩定是每個營運都希望達到的目標,畢竟網站一旦流量大了,訪問高了,就會有一些無聊人來攻擊,幫忙檢測漏洞是好,但純ddos的性質就很惡劣了.說遠了,這篇文章只是檢測有非法ip登入到伺服器上就自動給營運警示,當然也可以改成簡訊警示,前提是你有簡訊網關.複製代碼 代碼如下:#!/bin/bash#該指令碼作用是檢測是否有惡意IP登陸伺服器並郵件警示#可以結合139郵箱以達到簡訊及時通知到手機的功能#適用系統centos5 Ldate=`which date`Lawk=`which

Shell實現強制釋放記憶體指令碼分享_linux shell

公司伺服器最近兩天老是因為記憶體被使用滿而造成死機,實在是受不了老叫機房的人去幫忙重啟,專門寫了個指令碼來釋放下記憶體,當然這台伺服器不是太重要,我粗魯的處理方式估計不會適合大多數伺服器,請大家使用之前先考慮清楚,不然造成資料丟失就不關我的事了.指令碼內容:cat check-mem.sh複製代碼 代碼如下:#!/bin/bashmem_total=`free -m | awk 'NR==2' | awk '{print $2}'`mem_free=`free -m | awk 'NR==3'

Shell指令碼實現批量下載資源並保留原始路徑_linux shell

樣本資源清單如url.txt:複製代碼

Shell指令碼實現擷取網頁快照並產生縮圖_linux shell

擷取網頁快照並產生縮圖可分兩步進行:1、擷取網頁快照2、產生縮圖擷取網頁快照這裡我們用 phantomjs 來實現。關於 phantomjs 的詳細用法可參考官方網站。http://phantomjs.org/1、安裝我的環境是CentOS6.5,安裝時直接下載 tarball 然後解壓即可。複製代碼 代碼如下:# wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-i686.tar.bz2#

Shell指令碼實現簡單分割字串_linux shell

我們有這樣一個字串:複製代碼 代碼如下:info='abcd;efgh'現在想擷取abcd和efgh,我們可以簡單地用cut工具來擷取:複製代碼 代碼如下:fstr=`echo $info | cut -d \; -f 1`sstr=`echo $info | cut -d \; -f 2`這裡主要是用了cut工具的-d和-f參數:-d:指定欄位的分隔字元,預設的欄位分隔符號為“TAB”; -f:顯示指定欄位的內容;關於cut工具其他參數可參考這裡:cut命令

Shell實現讀取ini格式設定檔方法_linux shell

ini檔案格式一般都是由節、鍵、值三部分組成格式:[第一節 ]第一個鍵 = 值第二個鍵 = 第二個值[第二節 ]第一個鍵 = val1,val2,val3例子:複製代碼 代碼如下:[COM]KINGGOO =

Shell指令碼實現遞迴刪除空檔案夾_linux shell

有時我們需要遞迴刪除空檔案夾,網上找了一下,沒有發現比較好的Shell指令碼,於是自己動手寫了一個指令碼複製代碼 代碼如下:#!/bin/bash# author: 十年後的盧哥哥# des: delete empty directories recursivedeleteempty() {  find ${1:-.} -mindepth 1 -maxdepth 1 -type d | while read -r dir  do    if [[

Shell指令碼實現自動安裝zookeeper_linux shell

A:本指令碼啟動並執行機器,Linux RHEL6B,C,D,...:待安裝zookeeper cluster的機器, Linux RHEL6首先在指令碼啟動並執行機器A上確定可以ssh無密碼登入到待安裝zk的機器B,C,D,...上,然後就可以在A上運行本指令碼:複製代碼 代碼如下:$ ./install_zookeeper  前提:B, C, D機器必須配置好repo,本指令碼使用的是cdh5的repo,

Shell指令碼實現在Linux系統中自動安裝JDK_linux shell

A:本指令碼啟動並執行機器,LinuxB:待安裝JDK的機器, Linux首先在指令碼啟動並執行機器A上確定可以ssh無密碼登入到待安裝jdk的機器B上,然後就可以在A上運行本指令碼:複製代碼 代碼如下:$ ./install-jdk.sh B的IP  or:複製代碼 代碼如下:$ ./install-jdk.sh "B的IP" "JDK的URI"

Shell指令碼實現ftok函數_linux shell

“古老的 Sys IPC 仍然有好幾種有效用途。三種 IPC 對象是共用記憶體,號誌和訊息。”當使用到 IPC 的這些對象時,你需要為每個對象建立一個 Key。雖然理論上來說我們在定義一個 IPC Key 的時候可以使用任意自己喜歡的 Key ,但為了避免與其他的程式產生定義重複,在 UNIX/Linux 中一般會使用 key_t ftok(const char *path, int id) 函數來產生一個比較唯一的 Key 值。然而,“每個人都討厭 System V IPC。它比打孔紙帶還慢,

Shell指令碼實現產生SSL自簽署認證_linux shell

啟用 apache 的 mod_ssl 之後需要有認證才能正常運作。寫了個指令碼來操作。首先要確定機器上已經有 openssl 。複製代碼 代碼如下:#!/bin/sh## ssl 認證輸出的根目錄。sslOutputRoot="/etc/apache_ssl"if [ $# -eq 1 ]; then sslOutputRoot=$1fiif [ ! -d ${sslOutputRoot} ]; then mkdir -p ${sslOutputRoot}ficd

Shell編程 Bash引號的那點事_linux shell

先瞭解下,在bash指令碼中,有三種引號1. 單引號 '2. 雙引號 "3. 反引號 `單引號        兩個單引號包圍起來的字串就是普通的字串,它將保留原始的字面意思.雙引號        兩個雙引號包圍起來的字串,部分特殊字元將起到它們的作用.        這些特殊字元有:

shell 編程中空格的使用方法_linux shell

1.定義變數時, =號的兩邊不可以留空格.eg:gender=femal————rightgender =femal———–wronggender= femal———–wrong2.條件測試語句 [ 符號的兩邊都要留空格.eg:if [ $gender = femal ]; then——-right.echo “you are femal”;fiif[ $gender...-----------------------wrongif [$gender...--------------------

總頁數: 301 1 .... 277 278 279 280 281 .... 301 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.