日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

在linux中编写shell脚本文件,如何编写简单的Shell脚本(Script)文件之Linux的基本操作...

發(fā)布時(shí)間:2025/3/8 linux 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在linux中编写shell脚本文件,如何编写简单的Shell脚本(Script)文件之Linux的基本操作... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

如何編寫簡單的Shell腳本(Script)文件之Linux的基本操作

新建一個(gè)文本文件包含所需要的腳本。舉例,我會(huì)使用pico編輯器寫一個(gè)腳本用來運(yùn)行程序tar,帶上必要的可選項(xiàng)可以用來解壓從因特網(wǎng)下載下來的*.tar的文件(我好像總是記不住tar的所有參賽)。滑動(dòng)軸承?我決定把我的腳本名稱叫做“untar”:

pico untar

因?yàn)樵谖业漠?dāng)前工作目錄里untar文件不存在,所有pico文本編輯器自動(dòng)創(chuàng)建這個(gè)文件,現(xiàn)在,我輸入以下內(nèi)容:

#!/bin/bash

echo this is the script file $0

echo untarring the file $1

# this calls tar with options -xvzf (extract,

# verbose, filter through gzip, input filename)

tar -xvzf $1

我使用O保存這個(gè)文件,然后X退出。

腳本的第一行,以“#!”開始是特別的提示-它告訴shell應(yīng)該用哪一個(gè)程序來解釋我的腳本。在這個(gè)例子里,我使用bash shell /bin/bash。第一行必須使用“#!”開頭,否則腳本不會(huì)運(yùn)行(系統(tǒng)認(rèn)為是一個(gè)文本文件)。水泥煙囪新建?其他以“#”開始的行是注釋行只是給作者和讀者使用的,計(jì)算機(jī)將跳過這些行。

在以上腳本里,參數(shù)$0, $1, $2…是傳遞到腳本里面的參數(shù)。舉個(gè)例子,如果我運(yùn)行我的腳本名“myscript”帶七個(gè)參數(shù)如下:

myscript a b c d e f g

那么,參賽$0就是myscript, $1就是a, $2就是b,$3就是c,依此類推。

腳本的第二行和第三行,echo命令輸出所有在它后面同一行上的文本,然后擴(kuò)展在腳本里對(duì)應(yīng)的參數(shù)$0和$1。第四行和第五行是我寫的注釋文本,提醒我在這個(gè)腳本里要做的事情。只有最后一行是真正起作用的。

一旦腳本已經(jīng)寫好,我把文件屬性改成對(duì)文件擁有者是“可執(zhí)行”的:

chmod u+x untar

然后我的腳本就可以這樣運(yùn)行了:

./untar my_tar.tar.gz

Liunx腳本的確非常豐富,靈活,功能強(qiáng)勁,還可能有點(diǎn)復(fù)雜。然而,對(duì)于日常任務(wù)編寫一些簡單腳本,它并不需要什么特別高深的知識(shí)。你可以把一些要用到的命令放在一起,一個(gè)接一個(gè),輸入到文件里。活動(dòng)隔斷?我使用腳本很頻繁是因?yàn)槲姨珣辛?#xff0c;不想一次一次的輸入相同的命令。

一個(gè)最簡單的方法,可以把一組命令放在文本文件里然后使用source命令傳遞給shell讓它直接運(yùn)行:

source my_file

這個(gè)時(shí)候就不需要在文本第一行加上“#!”的標(biāo)志了。

3.4.6 引號(hào)的含義

一般來說,以下字符對(duì)于shell有特殊的含義:

\ ' " ` < > [ ] ? | ; # $ ^ & * ( ) =

這里有四種不同的符號(hào):反斜杠(\),單引號(hào)(‘),雙引號(hào)(“),反向單引號(hào)(`)。

反斜杠(\)表示:關(guān)閉后面字符的特殊含義

單引號(hào)(‘)表示:關(guān)閉在兩個(gè)單引號(hào)之間所有字符的特殊含義

雙引號(hào)(“)表示:關(guān)閉在兩個(gè)雙引號(hào)之間所有字符的特殊含義除了$ ` \

反向單引號(hào)(`)表示:告訴shell首先運(yùn)行兩個(gè)反向單引號(hào)之間的命令,生物醇油?然后把得到的結(jié)果再傳遞給兩個(gè)單引號(hào)之外的命令。同樣的功能也可以通過“$command”命令來實(shí)現(xiàn),而且可能會(huì)更方便。

舉個(gè)例子,我可以創(chuàng)建一個(gè)奇怪的目錄名叫做“*”通過使用“\”或者“’”符號(hào):

mkdir \*

mkdir ’*’

這屏蔽了“*”對(duì)于shell的特別含義。如果沒有“\”,“*”意味著當(dāng)前目錄下所有文件。

總結(jié)

以上是生活随笔為你收集整理的在linux中编写shell脚本文件,如何编写简单的Shell脚本(Script)文件之Linux的基本操作...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。