Linux運維_Bash腳本_部署安裝DocBook-XML-4.5(XML-DTD)

Linux運維_Bash腳本_部署安裝DocBook-XML-4.5(XML-DTD)

Bash (Bourne Again Shell) 是一個解釋器,負責處理 Unix 系統命令行上的命令。它是由 Brian Fox 編寫的免費軟件,并于 1989 年發布的免費軟件,作為 Sh (Bourne Shell) 的替代品。

您可以在 Linux 和 MacOS 機器上使用 Bash,甚至可以通過適用于 Linux 的 Windows 子系統在 Windows 10 機器上使用。

使用方法

  • 下載源碼包:

docbook-xml-4.5.zip

  • 放于指定路徑:

這里 Bash Shell 腳本的全局變量 STORAGE 指定的存放源碼包的路徑 /home/goufeng 可進行修改。

  • 執行 Bash Shell 腳本:

輸入 /[路徑名]/[腳本名].sh 即可進行自動編譯部署,過程中提示輸入 (y/n) 輸入 y 則進行下一步,這樣分階段確認的原因是為了確保能夠看到上一個源碼編譯結果中可能的錯誤和提示。

完整腳本

#! /bin/bash
# Create By GF 2024-03-01 12:55# Need File: docbook-xml-4.5.zip# ##################################################
STORAGE=/home/goufeng# Function: 部署安裝(Deploy Install) XML-DTD: DocBook-XML-4.5
# ##################################################
function Deploy_Install_XML_DTD_DocBook_XML_4_5() {# Linux 的 install 命令用于安裝或升級軟件、備份數據。## 其常用的格式有: # #     1. install [OPTION]... SOURCE DEST: 將源文件復制到目標目錄。#     #     2. install [OPTION]... SOURCE... DIRECTORY: 將多個源文件復制到已存在的目錄。#     #     3. install -d [OPTION]... DIRECTORY...: 在指定目錄下創建新目錄。# # 常用的參數包括: # #     1. -c: 如果目標文件已經存在, 不覆蓋, 保留原有的文件。#     #     2. -D: 如果目標文件是一個目錄, 則在該目錄下創建源文件的一個快捷方式。#     #     3. -b: 如果目標文件已經存在, 則將目標文件備份, 并將源文件復制到目標文件路徑。#     #     4. -m: 設置目標文件的權限。#     #     5. -o: 設置目標文件的擁有者。#     #     6. -p: 以源文件 訪問/修改 的時間作為目標文件的時間屬性, 即不改變文件的時間屬性。#     #     7. -s: 對待拷貝的可執行文件進行 strip 操作, 取出文件中的符號表。if [[ ! -d "/usr/share/xml/docbook/xml-dtd-4.5" ]]; then# 安裝目錄: /etc/xml 和 /usr/share/xml/docbook/xml-dtd-4.5# Installed Directories: /etc/xml and /usr/share/xml/docbook/xml-dtd-4.5local VERIFYlocal STEP_UNZIPPED=0local STEP_INSTALLED=0local STEP_CONFIGURED=0# ------------------------------------------read -p "[Confirm] Deploy and Install ( XML-DTD: DocBook-XML-4.5)? (y/n)>" VERIFYif [[ "$VERIFY" != "y" ]]; then exit 1; fi# ------------------------------------------unzip $STORAGE/docbook-xml-4.5.zip -d docbook-xml-4.5 && STEP_UNZIPPED=1# ------------------------------------------cd $STORAGE/docbook-xml-4.5# ------------------------------------------# 安裝 DocBook XML DTD# Installation of DocBook XML DTD## 以根用戶身份運行以下命令, 安裝 DocBook XSL 樣式表: # Install DocBook XML DTD by running the following commands as the root user:install -v -d -m755 /usr/share/xml/docbook/xml-dtd-4.5 &&install -v -d -m755 /etc/xml &&cp -v -af --no-preserve=ownership docbook.cat *.dtd ent/ *.mod \/usr/share/xml/docbook/xml-dtd-4.5# ------------------------------------------# 配置 DocBook XML DTD# Configuring DocBook XML DTD## Config Files: /etc/xml/catalog#               /etc/xml/docbook## /etc/xml/docbook 文件示例:# /etc/XML/docbook Example of File:## <?xml version="1.0"?># <!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"># <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">#   <public publicId="-//OASIS//DTD DocBook XML V4.5//EN" uri="http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"/>#   <public publicId="-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd"/>#   <public publicId="-//OASIS//DTD XML Exchange Table Model 19990315//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd"/>#   <public publicId="-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod"/>#   <public publicId="-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod"/>#   <public publicId="-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod"/>#   <public publicId="-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod"/>#   <public publicId="-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod"/>#   <public publicId="-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" uri="file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod"/>#   <rewriteSystem systemIdStartString="http://www.oasis-open.org/docbook/xml/4.5" rewritePrefix="file:///usr/share/xml/docbook/xml-dtd-4.5"/>#   <rewriteURI uriStartString="http://www.oasis-open.org/docbook/xml/4.5" rewritePrefix="file:///usr/share/xml/docbook/xml-dtd-4.5"/># </catalog>## /etc/xml/catalog 文件示例:# /etc/XML/catalog Example of File:## <?xml version="1.0"?># <!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"># <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">#   <rewriteSystem systemIdStartString="http://docbook.sourceforge.net/release/xsl/1.79.1" rewritePrefix="/usr/share/xml/docbook/xsl-stylesheets-1.79.1"/>#   <rewriteURI uriStartString="http://docbook.sourceforge.net/release/xsl/1.79.1" rewritePrefix="/usr/share/xml/docbook/xsl-stylesheets-1.79.1"/>#   <rewriteSystem systemIdStartString="http://docbook.sourceforge.net/release/xsl/current" rewritePrefix="/usr/share/xml/docbook/xsl-stylesheets-1.79.1"/>#   <rewriteURI uriStartString="http://docbook.sourceforge.net/release/xsl/current" rewritePrefix="/usr/share/xml/docbook/xsl-stylesheets-1.79.1"/>#   <delegatePublic publicIdStartString="-//OASIS//ENTITIES DocBook XML" catalog="file:///etc/xml/docbook"/>#   <delegatePublic publicIdStartString="-//OASIS//DTD DocBook XML" catalog="file:///etc/xml/docbook"/>#   <delegateSystem systemIdStartString="http://www.oasis-open.org/docbook/" catalog="file:///etc/xml/docbook"/>#   <delegateURI uriStartString="http://www.oasis-open.org/docbook/" catalog="file:///etc/xml/docbook"/># </catalog>## ..........................................# 以 root 用戶身份運行以下命令, 創建 (或更新) 并填充 /etc/xml/docbook 目錄文件:# Create (or update) and populate the /etc/xml/docbook catalog file by running the following commands as the root user:if [ ! -e /etc/xml/docbook ]; thenxmlcatalog --noout --create /etc/xml/docbookfi &&xmlcatalog --noout --add "public" \"-//OASIS//DTD DocBook XML V4.5//EN" \"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//DTD XML Exchange Table Model 19990315//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod" \/etc/xml/docbook &&xmlcatalog --noout --add "public" \"-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \"file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod" \/etc/xml/docbook &&xmlcatalog --noout --add "rewriteSystem" \"http://www.oasis-open.org/docbook/xml/4.5" \"file:///usr/share/xml/docbook/xml-dtd-4.5" \/etc/xml/docbook &&xmlcatalog --noout --add "rewriteURI" \"http://www.oasis-open.org/docbook/xml/4.5" \"file:///usr/share/xml/docbook/xml-dtd-4.5" \/etc/xml/docbook# ..........................................# 以 root 用戶身份運行以下命令, 創建 (或更新) 并填充 /etc/xml/catalog 目錄文件:# Create (or update) and populate the /etc/xml/catalog catalog file by running the following commands as the root user:if [ ! -e /etc/xml/catalog ]; thenxmlcatalog --noout --create /etc/xml/catalogfi &&xmlcatalog --noout --add "delegatePublic" \"-//OASIS//ENTITIES DocBook XML" \"file:///etc/xml/docbook" \/etc/xml/catalog &&xmlcatalog --noout --add "delegatePublic" \"-//OASIS//DTD DocBook XML" \"file:///etc/xml/docbook" \/etc/xml/catalog &&xmlcatalog --noout --add "delegateSystem" \"http://www.oasis-open.org/docbook/" \"file:///etc/xml/docbook" \/etc/xml/catalog &&xmlcatalog --noout --add "delegateURI" \"http://www.oasis-open.org/docbook/" \"file:///etc/xml/docbook" \/etc/xml/catalog# ------------------------------------------# 注意:# Caution:## 各種 BLFS 包在 V4.5 之前都要求 DocBook XML DTD 4.x 版本, 因此必須完成以下步驟才能成功構建這些包。# Various BLFS packages request DocBook XML DTD version 4.x before V4.5, so the following step must be done for those packages to be built successfully.## 上述安裝將創建文件并更新目錄。為了在系統標識符中請求任何 4.x 版本時使用 DocBook XML DTD V4.5, 您需要向目錄文件中添加其他語句。# 如果您的系統上已經安裝了下面引用的任何 DocBook XML DTD, 請從下面的 for 命令中刪除這些條目 (以 root 用戶身份執行命令):# The above installation creates the files and updates the catalogs. In order to utilize DocBook XML DTD V4.5 when any version 4.x is requested in the System Identifier, you need to add additional statements to the catalog files. # If you have any of the DocBook XML DTD's referenced below already installed on your system, remove those entries from the for command below (issue the commands as the root user):## for DTDVERSION in 4.1.2 4.2 4.3 4.4# do#   xmlcatalog --noout --add "public" \#     "-//OASIS//DTD DocBook XML V$DTDVERSION//EN" \#     "http://www.oasis-open.org/docbook/xml/$DTDVERSION/docbookx.dtd" \#     /etc/xml/docbook#   xmlcatalog --noout --add "rewriteSystem" \#     "http://www.oasis-open.org/docbook/xml/$DTDVERSION" \#     "file:///usr/share/xml/docbook/xml-dtd-4.5" \#     /etc/xml/docbook#   xmlcatalog --noout --add "rewriteURI" \#     "http://www.oasis-open.org/docbook/xml/$DTDVERSION" \#     "file:///usr/share/xml/docbook/xml-dtd-4.5" \#     /etc/xml/docbook#   xmlcatalog --noout --add "delegateSystem" \#     "http://www.oasis-open.org/docbook/xml/$DTDVERSION/" \#     "file:///etc/xml/docbook" \#     /etc/xml/catalog#   xmlcatalog --noout --add "delegateURI" \#     "http://www.oasis-open.org/docbook/xml/$DTDVERSION/" \#     "file:///etc/xml/docbook" \#     /etc/xml/catalog# done# ------------------------------------------cd $STORAGE && rm -rf $STORAGE/docbook-xml-4.5 && return 0elseecho "[Caution] Path: ( /usr/share/xml/docbook/xml-dtd-4.5 ) Already Exists."# ------------------------------------------return 0fi
}function main() {Deploy_Install_XML_DTD_DocBook_XML_4_5
}main

總結

以上就是關于 Linux運維 Bash腳本 部署安裝DocBook-XML-4.5(XML-DTD) 的全部內容。

更多內容可以訪問我的代碼倉庫:

https://gitee.com/goufeng928/public

https://github.com/goufeng928/public

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/713618.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/713618.shtml
英文地址,請注明出處:http://en.pswp.cn/news/713618.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

leetcode 熱題 100_最長連續序列

題解一&#xff1a; 哈希表&#xff1a;找連續最長的數字序列&#xff0c;很容易聯想到排序&#xff0c;但排序的時間復雜度O(nlogN)過大&#xff0c;判題容易超時。因此我們需要使用哈希表來快速查找&#xff0c;序列中是否存在與某個數相鄰的數。用HashSet建立哈希表并去重&a…

【Javascript編程實操02】1、判斷一個年份是閏年還是平年 2、找到三個數中最小的數

目錄 前言 1、判斷一個年份是閏年還是平年 原理&#xff1a; 代碼&#xff1a; 實現效果&#xff1a; 2、找到三個數中最小的數 流程圖&#xff1a; 代碼&#xff1a; 實現效果&#xff1a; 總結 前言 本次繼續針對Javascript階段的if...else...的實操練習&#xff0…

IDEA 配置股票插件

IDEA配置股票基金實時查看插件&#xff0c;步驟如下&#xff1a; 打開Settings&#xff0c;找到Plugins&#xff0c;在Marketplace中搜索&#xff1a;Money Never Sleeps&#xff0c;如下圖所示&#xff1a; Money Never Sleeps是IntelliJ IDEA平臺插件. 支持查看股票實時行情…

three.js 叉乘判斷物體在人前左,前右,后左、后右

效果&#xff1a; 代碼&#xff1a; <template><div><el-container><el-main><div class"box-card-left"><div id"threejs"></div><div style"padding: 10px;text-align: left;">叉乘判斷物體…

sshd啟動太慢,導致首次登錄困難的問題(未解決)

開始以為是無法開機啟動。長時間后&#xff08;3-4分鐘&#xff09;&#xff0c;又可以登錄了。 解決辦法1&#xff08;無效&#xff09; 編輯sshd_config UseDNS no GSSAPIAuthentication no IgnoreRhosts yes UsePAM no 解決辦法2&#xff08;無效&#xff09; 在/etc/h…

加密與安全_探索對稱加密算法

文章目錄 概述常用的對稱加密算法AESECB模式CBC模式 (推薦)ECB VS CBC 附&#xff1a;AES工具類總結 概述 對稱加密算法是一種加密技術&#xff0c;使用相同的密鑰來進行加密和解密數據。在這種算法中&#xff0c;發送方使用密鑰將明文&#xff08;未加密的數據&#xff09;轉…

14:00面試,14:07就出來了,問的問題過于變態了。。。

我從一家小公司轉投到另一家公司&#xff0c;期待著新的工作環境和機會。然而&#xff0c;新公司的加班文化讓我有些始料未及。雖然薪資相對較高&#xff0c;但長時間的工作和缺乏休息使我身心俱疲。 就在我逐漸適應這種高強度的工作節奏時&#xff0c;公司突然宣布了一則令人…

Android提供了多種方式來打開特定文件夾中的視頻

使用 MediaStore獲取指定文件夾的視頻&#xff0c;更優化方法&#xff1a; import android.content.ContentResolver; import android.content.ContentValues; import android.content.Context; import android.net.Uri; import android.os.Build; import android.os.Environme…

鴻蒙操作系統特點

鴻蒙&#xff08;HarmonyOS&#xff09;是華為公司開發的一種面向全場景的分布式操作系統。下面是對鴻蒙操作系統的詳細介紹&#xff1a; 1. 多設備支持&#xff1a;鴻蒙是一種面向多種設備的操作系統&#xff0c;支持手機、平板電腦、智能手表、智能屏、車載設備和物聯網設備…

kafka學習筆記三

目錄 第二篇 外部系統集成 第三篇 生產調優手冊 第1章 kafka硬件配置選擇 第2章 生產者調優 2.1 生產者核心參數配置 2.2 生產者如何提高吞吐量 2.3 數據可靠性 2.4 數據去重 2.5 數據有序 2.6 數據亂序 第3章 Kafka Broker調優 3.1 Broker核心參數配置 3.2 其他 …

禪道:提bug、管理case 7.0

一、禪道的介紹 &#xff08;1&#xff09;定義禪道是一個項目管理工具&#xff0c;也是一個bug管理工具&#xff0c;還是一個用例管理工具。 &#xff08;2&#xff09;作用&#xff1a;為了解決眾多企業在管理中出現混亂&#xff0c;無序的現象&#xff0c;開發出來 &…

ppt中調整某條表格框線的格式

1、先設置好邊框線的屬性&#xff1a; 2、選擇要調整的邊框線所在的單元格&#xff08;第二列的右邊框加粗&#xff0c;體現分欄的效果&#xff09; 3、設計--邊框--中選擇要調整的邊框線位置&#xff08;假設要調整右框線&#xff09;

精讀服務器默認rsyslog的配置文件

rsyslog的配置文件 rsyslog.conf #### MODULES ####$ModLoad imuxsock # provides support for local system logging (e.g. via logger command) $ModLoad imjournal # provides access to the systemd journal #$ModLoad imklog # reads kernel messages (the same are read…

JavaScript解決生日倒計時的問題

創建一個文本框&#xff0c;在一個文本框中&#xff0c;讓用戶輸入他的出生月份&#xff0c;第二個文本框中輸入月份中的日期&#xff0c;編寫一個JavaScript程序&#xff0c;在第三個文本框中打印距離用戶生日還有多少天。 <div id"box"><label for"&…

libvirt命名空間xmlns:qemu的使用

示例xml <domain type{domain_type} xmlns:qemuhttp://libvirt.org/schemas/domain/qemu/1.0><qemu:commandline><qemu:commandline><qemu:arg value-newarg/><qemu:env nameQEMU_ENV valueVAL/></qemu:commandline></domain>"…

13、輸入捕獲實驗

目錄 一、通用定時器輸入捕獲概述 二、常用寄存器和庫函數配置 三、輸入捕獲實驗講解 一、通用定時器輸入捕獲概述 STM32輸入捕獲工作過程&#xff08;通道1為例&#xff09; 一句話總結工作過程&#xff1a; 通過檢測TIMx_CHx上的邊沿信號&#xff0c;在邊沿信號發生跳變…

28.HarmonyOS App(JAVA)多頁簽的實現(Tab)

HarmonyOS App(JAVA)多頁簽的實現&#xff08;Tab&#xff09; 頁面可左右滑動&#xff0c;點擊界面1,2,3切換到對應界面 PageSlider的創建和使用 在layout目錄下的xml文件中創建PageSlider。 <PageSlider ohos:id"$id:page_slider" ohos:height"300vp&…

2D割草/吸血鬼游戲 性能優化——GPU Spine動畫

視頻中萬人同屏方案(gpu動畫、渲染、索敵、避障等功能)&#xff0c;可某寶搜店鋪&#xff1a;【游戲開發資源商店】獲取整套方案源碼。 在過去的幾年里&#xff0c;割草、類吸血鬼玩法的游戲頻出爆款&#xff0c;其豐富的技能、滿屏特效、刷怪清屏的解壓暢快是此類游戲的核心&…

【MySQL】復合查詢(重點)-- 詳解

一、基本查詢練習回顧 1、查詢工資高于 500 或崗位為 MANAGER 的雇員&#xff0c;同時還要滿足他們的姓名首字母為大寫的 J 2、按照部門號升序而雇員的工資降序排序 3、使用年薪進行降序排序 4、顯示工資最高的員工的名字和工作崗位 5、顯示工資高于平均工資的員工信息 6、顯…

韋東山嵌入式Liunx入門驅動開發四

文章目錄 一、異常與中斷的概念及處理流程1-1 中斷的引入1-2 棧(1) CPU實現a ab的過程(2) 進程與線程 1-3 Linux系統對中斷處理的演進1-4 Linux 中斷系統中的重要數據結構(1) irq_desc 結構體(2) irqaction 結構體(3) irq_data 結構體(4) irq_domain 結構體(5) irq_domain 結構…