#!/bin/bash
在寧河等地區,都構建了全面的區域性戰略布局,加強發展的系統性、市場前瞻性、產品創新能力,以專注、極致的服務理念,為客戶提供網站設計制作、成都網站制作 網站設計制作按需求定制制作,公司網站建設,企業網站建設,成都品牌網站建設,網絡營銷推廣,外貿網站制作,寧河網站建設費用合理。
#echo hi
DEBUG=0
case $1 in
想要啟動的程序名)
DEBUG=1 ;;
esac
if [[ ?$DEBUG -eq 1 ?]]; then
# 啟動命令
./elasitcsearch -d
echo "程序已啟動"
exit 10
else
echo 啟動命令只能使用.想要啟動的程序名)
exit 7
fi
不過我怎么覺得好奇怪呢。我沒寫過這種東西,我總感覺那里有問題。case 可以自己添加某些進程進去。這樣子你不需要在程序目錄存放只需要在你的家目錄存放就行。沒需要添加一個程序 就在case下添加進去就行。代碼都差不多
Linux cp命令主要用于復制文件或目錄
1.語法
2.參數說明
3.案例
3.1. cp 命令基本用法
3.2 復制目錄
3.3 復制軟鏈接文件
3.4. 保留源文件屬性復制
3.5. "-l" 和 "-s" 選項
4.cat
6.linux快速刪除大量文件
在命令行里顯示文本文件內容:
cat:在命令行里顯示文本文件內容,可以滾屏的(但是不方便把內容輸出到其他文件,所以一般腳本內部都用cat,less可以在調用腳本的時候用)。
less:在命令行里編輯文本文件。
vi:在圖形界面打開文本文件。
gedit,kate等等:在圖形界面打開任意文件或者url(gnome)。
命令作用
grep、fgrep和egrep命令這組命令以指定模式搜索文件,并通知用戶在什么文件中搜索到與指定的模式匹配的字符串,并打印出所有包含該字符串的文本行,在該文本行的最前面是該行所在的文件名。grep命令一次只能搜索一個指定的模式;egrep命令檢索擴展的正則表達式(包括表達式組和可選項);fgrep命令檢索固定字符串,它不識別正則表達式,是快速搜索命令。
Linux運行sql腳本的具體操作步驟如下:
1、使用shell工具登陸到安裝postgresql的服務器,切換到postgres用戶,postgresql默認的操作用戶,命令是:su - postgres,查看當前路徑是/var/lib/psql,創建一個test.sql腳本文件,命令是:vim test.sql。
2、sql腳本內容是:create table test (id int not null primary key,name text);insert into test valus(1, 't1');
3、執行test.sql腳本,命令是:psql -f test.sql
這里是因為postgresql安裝本機上,在第一步中我們切換到了postgres用戶,因此這里默認就是postgres用戶來操作,不用帶上用戶名和密碼。執行結果如下,可以看到有兩個提示:
create table
insert 0 1
執行完成后,我們登入數據庫,命令是:psql
4、進入psql交互式命令行后,我們執行兩個查看命令:\d
可以看到表test確實已經創建成功,然后執行命令:\d test
可以看到表中字段是id和name,和我們創建語句中內容一樣,說明第一條語句執行成功。
5、查看表中數據,命令是:select * from test;
顯示出來的值是1,t1,說明第二條執行語句也執行成功,說明test.sql腳本執行成功。
6、默認是postgres用戶,本機操作是,不需要用戶和密碼,現在我們來試試操作遠程linux服務器上的postgresql,也就是說執行本地的腳本文件,在遠程服務器上創建表。如下面圖中所示,命令是:psql -U test1 -h 192.168.1.194 -f test.sql,輸入對應用戶的密碼。
7、登陸到這個遠程服務器上,命令是:psql -U test -h 192.168.194
執行查看命令:\d,\d test
最后查詢數據庫:select * from test;結果和上面都一致。
Shell是一種腳本語言,那么,就必須有解釋器來執行這些腳本,常見的腳本解釋器有:
bash:是Linux標準默認的shell。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的縮寫,內部命令一共有40個。
sh: 由Steve Bourne開發,是Bourne Shell的縮寫,sh 是Unix 標準默認的shell。
另外還有:ash、 csh、 ksh等。
擴展資料:
常見的編程語言分為兩類:一個是編譯型語言,如:c/c++/java等,它們遠行前全部一起要經過編譯器的編譯。另一個解釋型語言,執行時,需要使用解釋器一行一行地轉換為代碼,如:awk, perl, python與shell等。
Shell 經過了POSIX的標準化,所以它是可以在不同的linux系統上進行移植。
關于注釋的問題: 在shell中使用#進行注釋,注意,sh里面沒有多行注釋,只能每一行加一個#號;
Shell腳本基本知識
概述:shell其實是內核與用戶之間的一個接口,
shell腳本
如果有一系列經常使用的linux命令,你可以把它們存儲在一個文件腫。shenll可以讀取這個文件,并執行其中的命令。這樣的文件成為腳本文件。
執行shell腳本
要創建一個shell腳本,你要使用任何編輯器比如vi在文本文件中編寫他。
為了使用bash shell賴執行腳本magic,其命令是:bash magic或者./magic
echo命令:
echo “this is an example of the echo command!”
屏幕上就會回顯“this is an example of the echo command!”
#符號
用于在shell腳本腫可以包含注解入口
echo “hello”
#this is a comment line. this would not produce any output!
echo “world!”
第二行是一個注解的例子。它將被shell忽略,而且不產生任何消息
變量:
可以在任何時間通過簡單的賦值來創建。
語法:
variable name-value
Linux 中的所有變量都被當作字符串
引用變量:
$符號用于引用一個變量的內容
variable1 = ${variable2}
讀入值給變量
在執行shell腳本時,shell還允許用戶直接從鍵盤讀入一個值給變量,還可以使用read命令來作。
$read fname
本地和全局shell變量
局部變量
當引用shell時,只有創建它的shell能夠知道變量的存在
全局變量
稱為子shell
shell中創建的變量局部于創建它的shell,除非使用export命令特別指出是全局的。
環境變量:
通過改變這些變量的值,用戶能夠定制此環境
一些環境變量的例子是HOME,PATH,PS1,PS2,LOGNAME,SHLVL,及SHELL
HOME變量
Linux系統中的每個用戶都有一個相關的稱作HOME的目錄
當一個用戶登錄后,進入相應的HOME的目錄
$ echo $HOME
PATH變量
包含一列用冒號定界的目錄的路徑名字,便于可執行程序的搜索。
PS1變量
PS1(Prompt String 1)變量包含了shell提示符,$符號
$ PS1 = “HELLO”
HELLO
PS2變量
是為第二個提示符設置值的環境變量
LOGNAME變量
包含用戶的注冊名字
$echo “${LOGNAME}”
SHLVL 變量
該變量包含當前工作的shell level
SHELL變量
環境變量存儲了用戶缺省的shell
env命令
可用來查看所有的已移出的環境變量表和它們各自的值!
命令替換
在單個命令行中使用多個命令的另外一種方法(非Pipes)是通過命令替換
echo “the data is `date`”
expr命令
用于求之算術表達式。該命令的輸出被送到標準輸出
$ expr 4 + 5
將在屏幕上顯示9
算術展開:
你可以在$((…)) 中括一個表達式,用下面的命令來計算它的值;
$((expression))
example1
編寫一個shell腳本用于計算呼叫中心未應答的詢問的數量。該腳本應該接受一天那所報告的詢問的總數和應答的詢問的數量,以便計算未應答的詢問的數量。
所有未應答的詢問總數=所有詢問的總數-應答的詢問的數量
!--[if !supportLists]--※ !--[endif]--※※※※※※※※※※※※※※※※※※※※※※※
條件執行
test和[]
求值表達式,并返回true(0)或false()
數值測試:
-eq 等于則為真
-ne 不等于則為真
-gt 大于則為真
-ge 大于等于則為真
-lt 小于則為真
-le 小于等于則為真
if構造
Linux shell提供了循環和判定的構造,可以在shell腳本中使用
算術測試
結合if構造,它可以用于測試變量的數字值
串測試
test命令也可以用于字符串
= 等于則為真
!= 不相等則為真
-z 字符串 長度為零則為真
-n 字符串 長度不為零則為真
文件測試
test命令也可以用于檢查文件的狀態
-e 文件存在則為真
-r 文件存在并且可讀則為真
-w 文件存在并且可寫則為真
-x 文件存在并且可執行則為真
-s 文件存在并且至少有一個字符則為真
-d 文件存在并且為目錄則為真
-f 文件存在并且為普通文件則為真
-c 文件存在并且為字符型文件則為真
-b 文件存在并且為塊特殊文件則為真
-a并且 -o或者 !非
exit命令
用于終止shell腳本的執行并返回到$提示符下
case 。。。esac
shell腳本中使用的這個構造依據變量的值而執行一組特定指令
當變量的值和其中的一個值匹配的時候,就執行寫在該值下的一組命令。
example3
迭代
while構造
while 條件
do
命令(s)
done
只有條件為真的時候,才能執行do與done之間的命令
until構造
until循環構造的求值模式于while循環相反
until循環將繼續執行直到求值的條件為真的時候
for構造
for variable_name in list_of_values
do
…
done
for循環取一列值作為輸入并對循環中每個值執行循環
break和contineu命令
同其他語言中的用法
example4
控制進程的執行
請求后臺處理
用于請求后臺進程的符號是 ()
$ wc tempfile
[1] 2082
$ vi newfile
檢查后臺進程
ps(進程狀態)命令為每個當前的活動的每個進程產生一行入口。
終止后臺進程
可用kill,如下所示
kill 278
查看完成一個命令所花的時間
你可以使用time命令來查看一個命令從開始到結束所花的時間
time fine /etc –name “passwd” 2 /dev/null /dev/null表明忽略錯誤信息。
管道的介紹
垂直條(|)是管道字符
它只是shell:“|”前面命令的輸出作為“|”之后命令的輸入發送
ls –l | more
用管道組合命令,功能強大
網頁名稱:Linux腳本內部命令,Linux執行腳本命令
文章出自:http://www.yijiale78.com/article16/hodhgg.html
成都網站建設公司_創新互聯,為您提供營銷型網站建設、手機網站建設、網站策劃、企業建站、服務器托管、品牌網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯