例如: Sys-admin在Ubuntu上安装了Oracle JDK - 大约有5行bash命令:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
sudo apt-get install -y oracle-java8-installer
sudo apt-get install oracle-java8-set-default
我们需要将这些命令保存为bash代码段并将其标记为“Oracle JDK”。或者例如PostgreSQL安装或系统团队反复做的任何其他事情,需要快速找到它以便快速修改
请?任何建议?
答案 0 :(得分:2)
对于执行各种代码段的团队来说,CoderVault似乎是一个很好的解决方案:https://github.com/codervault/codervault
如果你想直接在Bash中使用它,你需要制作一些自己形式的片段文件,获取并同步它。例如,使用以下内容创建文件夹.functions
和文件~/.functions/shared
:
# Setup, do not change
alias sniplist="awk '/function/ {print $2;}' ~/.functions/shared"
function syncSnippets {
P=$(pwd) && \
cd ~/.functions && \
git pull --rebase <HOST>/path/to/repo && \
cd $P
source ~/.functions/shared
}
# Add snippets below
function OracleJDK {
sudo add-apt-repository ppa:webupd8team/java && \
sudo apt-get update && \
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections && \
sudo apt-get install -y oracle-java8-installer && \
sudo apt-get install oracle-java8-set-default
}
根据需要添加更多功能。 &&
用于按顺序运行所有命令,并在其中一个命令失败时中止,\
以便能够在另一行上继续执行相同的命令。这样,您就可以运行单个链式命令。
创建一个Git存储库(git init
),添加一个服务器(git remove add origin <HOST>/path/to/repo
),提交并推送。请记住:您不需要Git服务器来托管存储库。你可以在服务器上初始化它,并通过SSH访问它,这就是你所需要的。
所有其他人需要做的就是克隆这个repo(git clone <HOST>/path/to/repo ~/.functions
),在shell配置文件(source ~/.functions/shared
)中获取它并启动另一个shell。完成。
如果你忘记了哪些片段可用,只需运行sniplist
并获得一个方便的功能列表。