こんにちは、エラーが発生し続けます
./imagehash.sh: line 2: =: command not found
$CMD
変数を正しく設定していることがわかっている場合(bashスクリプトの外部でコマンドを試してみたところ、うまくいきました)
これが私のbashスクリプトです
#!/bin/bash
$CMD='md5sum ../Desktop/cases/CourseworkCase/Evidence/image.dd'
echo $CMD
更新
$CMD
変数にスペースがなく、''
を囲むようにbashを修正しましたが、今はエラーファイルno such file or directory
を取得しています。パスを見て、文字をコピーして、あたりです。
ここで何が間違っていますか?
#!/bin/bash
CMD="$(md5sum ../Desktop/cases/CourseworkCase/Evidence/image.dd)"
echo $CMD
変数を割り当てるには$
記号を前に置かないでくださいまたは等号の前後にスペースを入れないでください。 bashでの変数の割り当ては次のとおりです。
MYVAR="CONTENT"
コマンドの出力で変数を作成するには、$(command)
を使用できます。これはcommand
を実行し、その出力を返します。
md5sum
の出力は次のようになります。
f110abe5b3cfd324c2e5128eb4733879 image.dd
ファイル名のmd5合計を分離する場合は、代わりに次の行のいずれかを使用できます。
CMD="$(md5sum ../Desktop/cases/CourseworkCase/Evidence/image.dd | cut -d ' ' -f 1)"
CMD=($(md5sum ../Desktop/cases/CourseworkCase/Evidence/image.dd))