首页 > 解决方案 > Bash 一种记录不可变变量的方法

问题描述

我想要实现的是,当我发布一个软件时,它有他的软件版本,(1.0、1.1 等)我可以在 bash 中创建一个一旦用户下载我的程序就无法编辑的变量吗?

我有类似的东西: declare -r version=11 如果最终用户以 sudo/root 身份打开 vim,他可以轻松编辑此值,bash 可以提供一些解决此问题的方法吗?

谢谢。

标签: bash

解决方案


在编程语言的上下文中,术语“不可变”意味着在第一次赋值后不能修改变量。这通常是一个常数。

您正在寻找的是一种使整个程序不可变的方法。这可以在文件系统中完成。

sudo chattr +i your-script

现在脚本是不可变的,不能直接更改vi。但是用户可以删除不可变标志以编辑文件。


推荐阅读