Time of Update: 2018-12-06
一、本地變數的使用本地變數就如同局部變數一樣,只在本SHELL中起作用。它不會影響到其他SHELL中的變數。1。顯示變數值可以使用echo命令。需要注意的是,使用變數的時候必須在變數名前加上$符號2。清除變數使用unset命令可以清除命令。3。顯示所有本地SHELL變數SHELL中預定義了一些環境變數。要想顯示這些命令,可以使用set命令。
Time of Update: 2018-12-06
需求如下:有個檔案aaaa,內容如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbmmmcccccccccccccccddddddddddddddddmmmmmmffffffffffffffff我想提取出來還有"mm"的行的行號,方法總結如下:方法一:Code
Time of Update: 2018-12-06
Bash shell系列裡,由變數談起,先講到環境變數的功能與修改的問題, 然後會繼續提到曆史指令的運用。接下來,就會談一下『資料流重導向』這個重要概念, 最後就是管線命令的利用!一 Bash shell簡介管理整個硬體的其實是核心 (kernel),一般使用者 (user) 則是以 shell 來跟核心溝通~ 我們常常提到的 shell 其實是比較狹隘的定義,一般來說,在 Linux 裡頭,所謂的 shell 就是指 BASH 這個文字模式的 shell 。但是,廣義的 shell
Time of Update: 2018-12-06
一 命令別名設定: alias, unalias命令別名是一個很有趣的東西,特別是你的慣用指令特別長的時候!還有, 增設預設的屬性在一些慣用的指令上面,可以預防一些不小心誤殺檔案的情況發生的時候! 舉個例子來說,如果你要查詢隱藏檔,並且需要長的列出與一頁一頁翻看,那麼需要下達『 ls -al | more 』這個指令,我是覺得很煩啦! 要輸入好幾個單字!那可不可以使用 lm 來簡化呢?!當然可以,你可以在命令列下面下達:[root@linux ~]# alias lm='ls -l |
Time of Update: 2018-12-06
資料流重導向就是將某個指令執行後應該要出現在螢幕上的資料, 給他傳輸到其它的地方,例如檔案或者是裝置 (例如印表機之類的!)!這玩意兒在 Linux 的文字模式底下可重要的! 尤其是如果我們想要將某些資料儲存下來時,就更有用了! 一般來說,如果你要執行一個指令,通常他會是這樣的: 我們執行一個指令的時候,這個指令可能會由檔案讀入資料,經過處理之後,再將資料輸出到螢幕上。 在圖中, standard output 與 standard error 分別代表標準輸出與標準錯誤輸出,
Time of Update: 2018-12-06
作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/顏色是通過添加專用序列來選擇的 -- 基本上是夾在 "/e["和 "m" 之間數字值。如果指定一個以上的數字代碼,則用分號將它們分開。 echo -e "/e[31;40m" 第一個數字(31)為前景顏色(紅色);第二個數字為(40)背景顏色(黑色) echo -e "/e [0m" 我們需要使用 "/e[0m" 序列將顏色重新設定為正常值。 /033 [30m -- /03
Time of Update: 2018-12-06
作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/有一個文本: 2006 中國 四川 042834 1 2 3 042835 4 5 6 042836 7 8 9 2007 中國 重慶 042837 1 2 3 042838 4 5 6 042839 7 8 9 ...... ...... 要合并為 0
Time of Update: 2018-12-06
作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/Offline Backup/Restore the TDS1.Preparation (1) Logon to the Server as root. (2) Open a terminal, check if there is the script named tarbackup.sh in /usr/local/bin directory (3) Make sure you
Time of Update: 2018-12-06
作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/一:"'$var'" 這種寫法大家無需改變用'括起awk程式的習慣,是老外常用的寫法.如: var="test"awk 'BEGIN{print "'$var'"}' 這種寫法其實際是雙括弧變為單括弧的常量,傳遞給了awk. 如果var中含空格,為了shell不把空格作為分格符,便應該如下使用: var="this is a test"awk 'BEGIN{print "'"
Time of Update: 2018-12-06
作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/#!/bin/bash########################################################################## Author: Futuredaemon# Created Time: Thu 19 Nov 2009 10:57:15 PM CST# File Name: checkMem.sh# Description: ###########
Time of Update: 2018-12-06
[Erlang 0006] Erlang中的record與宏 中我們提到過Record是一個編譯時間的功能,在Erlang VM中並沒有專門的資料類型.線上上解決問題有時候會遇到要在shell中使用record,那麼就有兩個選擇:1.在shell中構造record定義,如果能構造record有了record的定義編寫ets:match的匹配模式就方便多了; 2.直接使用record對應的tuple結構;方法一 使用rd命令 Eshell V5.9 (abort with
Time of Update: 2018-12-06
View Code %token STRING%token RIGHT_APPEND%%cmd: fg_cmd | bg_cmd ;bg_cmd: fg_cmd '&' ;fg_cmd: simple_cmd | pipe_cmd ;simple_cmd: /* empty command */ | executable | executable
Time of Update: 2018-12-06
按照鳥哥私房菜些的shell編程,但是卻出現莫名其妙的問題。如:#測試if else read -p "input y/n? : " ynif [ $yn == "y" ]; then echo "continue;"elif [ $yn == "n" ]; then echo "break;"else echo "pls input sth."fi 執行的時候,總是發現提示 [: 12: y: unexpected
Time of Update: 2018-12-06
#! /bin/sh #啟動方法 start(){ java -Xms128m -Xmx2048m -jar test1.jar 5 > log.log & java -Xms128m -Xmx2048m -jar test2.jar 5 > log.log & tail -f result.log } #停止方法 stop(){ ps -ef|grep test|awk '{p
Time of Update: 2018-12-06
首先要確保檔案有可執行許可權 #sh>chmod a+x filename然後修改檔案格式 #sh>vi filename利用如下命令查看檔案格式 :set ff 或 :set fileformat可以看到如下資訊 fileformat=dos 或 fileformat=unix利用如下命令修改檔案格式 :set ff=unix 或 :set fileformat=unix:wq (存檔退出)最後再執行檔案 #sh>./filename #!/bin/shNAME=XXXX.
Time of Update: 2018-12-06
2.1 什麼是shell解釋型語言,不適合用來完成對執行時間比較挑剔或者處理器符合比較大的工作shell是一個做為使用者與UNIX系統之間的操作介面的程式,檔案的重新導向只要使用"<"和"》"就行,管道用一個"|"就能代表,子進程的輸出是"$(...)",所有這些的具體細節都早已為使用者準備好了。2.2 管道和重新導向2.2.1 對輸出資料進行重新導向$ls -l > lsoutput.txt,這條命令將ls命令的輸出儲存到一個名為lsoutput.txt的檔案裡去$ps >&
Time of Update: 2018-12-06
從程式員的角度來看, Shell本身是一種用C語言編寫的程式,從使用者的角度來看,Shell是使用者與Linux作業系統溝通的橋樑。使用者既可以輸入命令執行,又可以利用 Shell指令碼編程,完成更加複雜的操作。在Linux GUI日益完善的今天,在系統管理等領域,Shell編程仍然起著不可忽視的作用。深入地瞭解和熟練地掌握Shell編程,是每一個Linux使用者的必修 功課之一。Linux的Shell種類眾多,常見的有:Bourne
Time of Update: 2018-12-06
1. shell判斷檔案,目錄是否存在或者具有許可權 2. #!/bin/sh 3. 4. myPath="/var/log/httpd/" 5. myFile="/var /log/httpd/access.log" 6. 7. # 這裡的-x 參數判斷$myPath是否存在並且是否具有可執行許可權 8. if [ ! -x "$myPath"]; then 9. mkdir "$myPath" 10. fi 11. 12. # 這裡的-d 參數判斷$myPath是否存在 13. if [
Time of Update: 2018-12-06
本文裡,通過對shell指令碼裡的變數申明、迴圈語句、條件判斷、資料疊加的總結,能解決linux日常管理的大部分指令碼1、變數的申明:是弱類型的語言,用name=xxx;取變數值的時候$name 2、條件判斷: if[ condition]; then operator; elif[ condition]; then operator; else operator; fi3、迴圈: while[
Time of Update: 2018-12-06
shell 編程中使用到得if語句內判斷參數 –b 當file存在並且是塊檔案時返回真 -c 當file存在並且是字元檔案時返回真 -d 當pathname存在並且是一個目錄時返回真 -e 當pathname指定的檔案或目錄存在時返回真 -f 當file存在並且是正規檔案時返回真 -g 當由pathname指定的檔案或目錄存在並且設定了SGID位時返回為真 -h 當file存在並且是符號連結檔案時返回真,該選項在一些老系統上無效 -k