本篇內(nèi)容主要講解“實(shí)用的Shell腳本有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“實(shí)用的Shell腳本有哪些”吧!
專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!成都創(chuàng)新互聯(lián)公司為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計(jì)制作,服務(wù)好的網(wǎng)站設(shè)計(jì)公司,成都做網(wǎng)站、網(wǎng)站制作負(fù)責(zé)任的成都網(wǎng)站制作公司!1 特殊文件名的遠(yuǎn)程拷貝
服務(wù)器之間拷貝文件經(jīng)常使用scp命令,其命令格式:
(1)scp filename [user@]host:dir
(2)scp [user@]host:dir1/filenamedir2
格式(1)將本地文件filename拷貝到遠(yuǎn)程服務(wù)器host的dir目錄下,格式(2)將遠(yuǎn)程服務(wù)器host的dir1目錄下的文件filename,拷貝到本地dir2目錄下。
如果拷貝的文件名包含特殊字符,比如ecs-eos-base:1.0.tar,冒號:屬于特殊字符。直接使用格式(1)的命令進(jìn)行拷貝,命令將ecs-eos-base識別為主機(jī)名稱而命令運(yùn)行報(bào)錯,如下:
[root@PHY91 docker]# scp ecs-eos-base:1.0.tar root@PHY94:/root/docker/
ssh: Could not resolve hostname ecs-eos-base: Temporary failure in name resolution
此時使用./表示當(dāng)前目錄即可解決該報(bào)錯,命令如下:
[root@PHY91 docker]#
scp ./ecs-eos-base:1.0.tar root@PHY94:/root/docker/
ecs-eos-base:1.0.tar 100% 84MB 172.7MB/s 00:00
使用./代表當(dāng)前目錄,scp命令就不會將ecs-eos-base識別為主機(jī)名稱。
2 Base64編碼和解碼
在Centos或Redhat Linux操作系統(tǒng)中,如果要進(jìn)行字符串的Base64編碼和解碼,可以使用base64命令即可簡單實(shí)現(xiàn)。
(1)編碼
[root@PHY91 ~]# echo “PHY91” | base64
UEhZOTEK
(2)解碼
[root@PHY91 ~]# echo “UEhZOTEK” | base64 -d
PHY91
base64既可以編碼解碼字符串,也可以對文件內(nèi)容進(jìn)行編碼和解碼。-d參數(shù)是表示解碼。
對文件編碼解碼命令如下:
[root@PHY91 test]#
echo “12345” >
test.txt
[root@PHY91 test]#
base64 test.txt
MTIzNDUK
[root@PHY91 test]#
base64 test.txt >
test2.txt
[root@PHY91 test]#
more test2.txt
MTIzNDUK
[root@PHY91 test]#
base64 -d test2.txt
12345
3 版本號自增長的實(shí)現(xiàn)
使用docker build進(jìn)行應(yīng)用鏡像構(gòu)建時,為便于鏡像版本管理,每次構(gòu)建的鏡像版本號會增加1。可以使用腳本實(shí)現(xiàn)版本號的自增1,首先創(chuàng)建一個version.txt文件,內(nèi)容如下:
[eos@host-132 eos]$ more version.txt
1.0.0
獲取版本號命令如下:
version=cat version.txt
版本號賦值給version變量。
版本號自動增加1,腳本命令如下:
echo $version | awk -F’.’ ‘{print($1"."$2"."($3+1));}’ > version.txt
命令說明:
(1)使用awk命令,分隔符為點(diǎn)“.”;
(2)$1,$2和$3分別是版本號的第1,2,3個數(shù)字;
(3)$3+1表示版本號增加1。
4 sed配置運(yùn)行環(huán)境
在動靜完全分離的web應(yīng)用項(xiàng)目中,前端使用nginx部署靜態(tài)資源即可,項(xiàng)目前端代碼的基準(zhǔn)URL(baseUrl)需要根據(jù)不同運(yùn)行環(huán)境(開發(fā)、測試、生產(chǎn))進(jìn)行相應(yīng)的修改,例如baseUrl賦值的js代碼如下:
define([“jquery”],
function ($) {
return {
到此,相信大家對“實(shí)用的Shell腳本有哪些”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!