Linux体系自动化sh脚本
前言Linux体系中,可以编写自动化sh脚本,并在终端中自动加载。可用来简化复杂下令或创建专属下令,提升工作服从。
功能
[*]init_workspace:可以识别Host和Docker,初始化工作目次
[*]source_my_func:完成自加载,用于更新此自动化sh脚本
[*].bashrc (system and docker):终端自动加载,实用于Host和Docker
[*]custom_function:编写自定义函数,简化复杂下令,创建专属下令
优点
[*]自动化提升服从
[*]同一脚本可同时用于System内和Docker内
[*]化简复杂下令,形成本身的专属下令
[*]保存下令汗青记录
[*]改善打字慢题目
[*]自动补全改善错别字题目
步调
[*]创建sh脚本
创建sh脚本,并完成功能,例如:script.sh
[*]添加bash解释器
在sh脚本的首行添加bash解释器,一般为:#!/bin/bash
[*]添加可实行权限
为sh脚本添加可实行权限:chmod +x
[*]暂时加载sh脚本
利用 source 下令在终端中暂时加载sh脚本:source script.sh
永久见效
在 .bashrc 文件中自动加载sh脚本:vim ~/.bashrc
示例
文件名称:my_func.sh
#!/bin/bash
# 全局变量
workspace="/workspace"
work_user="root"
# relative_path="shell/script/my_func.sh"
relative_path="CodeLib/Shell/script/my_func.sh"
# main函数
function my_func_main() {
# 调用函数,初始化workspace
init_workspace
echo "my_func init success, workspace: $workspace"
}
# 初始化workspace函数
function init_workspace() {
if [ -d "/workspace" ]; then
workspace="/workspace"
work_user="root"
else
workspace="/home/nsjim/work"
work_user="nsjim"
fi
# echo "workspace init success: $workspace"
}
# 添加可执行权限
function add_x() {
# chmod +x $1.sh
chmod -R +x $1
}
# 添加读写权限
function add_rw() {
chmod -R a+rw $1
}
# 开启docker
function docker_start() {
docker start mlir_ns
docker exec -it mlir_ns /bin/bash
}
# 进入docker
function docker_exec() {
docker exec -it mlir_ns /bin/bash
}
# 初始化docker服务(docker内)
function docker_init() {
# ssh service
eval ssh-agent
service ssh start
}
# 重新加载此脚本
function source_my_func() {
init_workspace
# source /workspace/CodeLib/Shell/script/my_func.sh
source ${workspace}/${relative_path}
}
# 显示此脚本路径
function show_my_func_path() {
init_workspace
echo "script path: ${workspace}/${relative_path}"
}
# 加载PATH环境变量
function export_path() {
init_workspace
# 环境变量使用冒号隔开,使用如下命令可添加环境变量
# export PATH=/path/to/dir:$PATH
export PATH=$workspace/CodeLib/Python/Tool:$PATH
}
# 加载PYTHONPATH环境变量
function export_pythonpath() {
init_workspace
# 环境变量使用冒号隔开,使用如下命令可添加环境变量
# export PYTHONPATH=/path/to/dir:$PYTHONPATH
export PYTHONPATH=$workspace/model-apt/ml-cvnets:$PYTHONPATH
}
#### 调用main函数
my_func_main
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]