我的 mac 中有一个目录,其中包含具有以下名称的文件 -
Directory images -
1.jpg
2.jpg
3.jpg
4.jpg
我想编写一个bash脚本来重命名这个文件夹中的所有文件,通过使用一些标准的散列算法,所以目录现在看起来像这样 -
让我们假设散列键是 common_key = "mykey123"
Directory images -
U2FsdGVk.jpg
X1O9Z6e.jpg
ECdjybF.jpg
U2FsdGVajpg
我怎样才能做到这一点?
此外,我正在用Nodejs(基本上是javascript)编写一些代码,我希望从这四个中选择一个随机图像并显示它,所以我正在使用 -
var random_image_number = Math.floor((Math.random()*4)+1); // Picking a random number out of 4
假设 random_image 是 3。现在我需要显示图像编号 3。如果我没有对图像名称进行哈希处理,我通常会这样做 -
<img src="/images/" + random_image_number + ".jpg" />
但是现在我需要对我生成的随机数再次使用标准加密算法,才能显示图像。(我一直强调“标准”,因为相同的哈希算法必须在 JS 端以及 bash 脚本中工作并生成相同的结果)
所以我需要这样的东西
var random_image_number = Math.floor((Math.random()*4)+1); // Picking a random number out of 4
var random_image_number_hashed = some_hashing_function(common_key, random_image_number)
<img src="/images/" + random_image_number_hashed + ".jpg" />
请告诉我我可以使用什么算法。它不需要太复杂,但必须在 bash 脚本和 javascript 端给出相同的结果。
此外,我不确定如何编写 bash 脚本来使用散列算法重命名所有文件,因此任何有关此的代码都将非常有用。谢谢你。