中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
【linux系統(tǒng)】實例快速上手shell腳本

閱讀大概需要8分鐘


昨天老師給了宗林師兄任務,讓我跑一個機器翻譯的程序。我看了看就是跑shell腳本。剛開始一看。。我的天。。好長的代碼,但是覺得這個時候就更不能怕,得迎難而上,趁這個機會,把shell腳本好好弄弄,以后也好用呀!好吧,下面讓我們一個一個來。


初始化路徑


這個最好都在開頭寫上,意思是之后的任何語句執(zhí)行只要有一個返回的不是true就退出。這樣的好處就是保證自己的代碼在運行完完全是自己想要的,而不是運行了幾天發(fā)現(xiàn)竟然是有問題的代碼。真的是這樣就慘了。所以,開頭一定寫上這個。如果要增加可讀性,也可以用set -o errexit  字面意思就是出現(xiàn)error就exit。跟set -e是一樣一樣的。

這里大概分為四小部分:

分別為:BASH_SOURCE,cd,dirnamepwd

BASH_SOURCE:我們先看里面的,這個是當前腳本的文件的路徑。但是前提你得先將次腳本文件加上可執(zhí)行權限,即 chmod +x [當前文件名]。然后,就能用這個命令了。BASH_SOURCE[0]存放的路徑數(shù)據(jù)。

dirname:取出后面命令的路徑部分

cd 這個就很簡單了,進入dirname取出該腳本的路徑的上一層(因為后面有一個/..,所以是上一層)

pwd:這個是獲得當前路徑。

&&:這個的意思就是前面的執(zhí)行完了才執(zhí)行后面的。

這句話總的意思就是,獲取該腳本的上一級的路徑。


你看看,一句話學習了這么多命令,是不是很開心O.O

下一句話

這個主要就是${1:xxx}是知道什么意思。我先說說$0,$1,$2等,這里的$0表示這個這個腳本本身,$1,$2分別表示第一個參數(shù),第二個參數(shù)。那么我們來看這個命令。這個意思就是說:先判斷第一個位置是不是有傳入的參數(shù),有的話OUTPUT_DIR就是第一個參數(shù),如果沒有的話那就后面的xxx,這里就是OUTPUT_DIR='wmt16_de_en'。

這兩句應該不用解釋了。設置OUTPUT_DIR的值和一個echo的輸出。


下載數(shù)據(jù)




第一句話

這里說說mkdir吧。

mkdir:建立一個目錄。mkdir myfile    就生成一個myfile目錄在當前目錄里。這里的-p選項,是一次可以建立多個路徑的意思。舉個例子:

mkdir ./dir1/dir2/dir3   如果此時沒有dir1那么之后的都建立不了,如果用

mkdir -p ./dir1/dir2/dir3 就可以啦。沒有的都會自己創(chuàng)建。


下一句

這里我們主要看curl就好了。curl是網(wǎng)絡請求命令。如果想比如保存整個網(wǎng)頁呀,下載數(shù)據(jù)呀,都可以的。curl的下載形式為:



如果想詳細了解curl命令,可以看

shell中的curl網(wǎng)絡請求

https://blog.csdn.net/u012390519/article/details/74231606

因為我們經(jīng)常用的就是curl -o [保存路徑] [網(wǎng)絡鏈接]

所以,基本記住這個命令就差不多啦。


解壓

這里的主要命令就是解壓tar了。

先來說說tar的參數(shù)吧。

-c :建立一個壓縮文件的參數(shù)指令(create 的意思);

-x :解開一個壓縮文件的參數(shù)指令!

-t :查看 tarfile 里面的文件!

    特別注意,在參數(shù)的下達中, c/x/t 僅能存在一個!不可同時存在!

    因為不可能同時壓縮與解壓縮。

-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?

-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?

-v :壓縮的過程中顯示文件!這個常用,但不建議用在背景執(zhí)行過程!

-f :使用檔名,請留意,在 f 之后要立即接檔名喔!不要再加參數(shù)!

   例如使用『 tar -zcvfP tfile sfile』就是錯誤的寫法,要寫成

   『 tar -zcvPf tfile sfile』才對。

-p :使用原文件的原來屬性(屬性不會依據(jù)使用者而變)

-P :可以使用絕對路徑來壓縮!

-N :比后面接的日期(yyyy/mm/dd)還要新的才會被打包進新建的文件中!

--exclude FILE:在壓縮的過程中,不要將 FILE 打包!

該參數(shù)來自于

【shell】tar命令詳解

http://blog.sina.com.cn/s/blog_66f483af01018ab3.html


因為我們常用的命令就是

解壓 tar -xvzf [解壓的文件]  -C [輸出文件的名字]

打包 tar -zcvf [打包的文件]  -C [輸出文件的名字]

-C [文件名字]可以不寫,用默認文件名。


常用shell語句



這里主要就是if了。

一、條件測試的表達式:

    [ expression ]  括號兩端必須要有空格

    [[ expression ]] 括號兩端必須要有空格

    test expression


組合測試條件:

-a: and

-o: or

!:  非


二、整數(shù)比較:

-eq 測試兩個整數(shù)是否相等

-ne 測試兩個整數(shù)是否不等

-gt 測試一個數(shù)是否大于另一個數(shù)

-lt 測試一個數(shù)是否小于另一個數(shù)

-ge 大于或等于

-le 小于或等于


三、命令間的邏輯關系

邏輯與:&&

        第一個條件為假 第二個條件不用在判斷,最總結果已經(jīng)有

        第一個條件為真,第二個條件必須得判斷


邏輯或:||


四、字符串比較

== 等于  兩邊要有空格

!= 不等

>  大于

<> 小于


五、文件測試

-z string 測試指定字符是否為空,空著真,非空為假

-n string 測試指定字符串是否為不空,空為假 非空為真

-e file 測試文件是否存在

-f file 測試文件是否為普通文件

-d file 測試指定路徑是否為目錄

-r file 測試文件對當前用戶是否可讀

-w file 測試文件對當前用戶是否可寫

-x file 測試文件對當前用戶是都可執(zhí)行

-z  是否為空  為空則為真

-a  是否不空

這里,如果then不寫在if后面,if后面就不用分好了;還有,末尾記得fi結尾呀!

好啦?;镜闹v完了,給你這篇shell腳本吧。自己嘗試看看,理解理解!進步在一點一滴!!加油

https://github.com/DevSinghSachan/Attention_is_All_You_Need/blob/master/tools/wmt16_en_de.sh

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
shell腳本中的幾個括號總結
shell 判斷語句 - 我的文章 - study linux
Linux中編寫Shell腳本
5、RedHat7系列——Shell腳本(一)
學習Linux課程第五天
csh 命令詳解
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服