私の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) でいくつかのコードを書いています。ここで、これら 4 つからランダムな画像を選択して表示したいので、使用しています-
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スクリプトを作成する方法がわからないため、それに関するコードは非常に役立ちます。ありがとうございました。