関連付けられた単語数に変数を掛けることはできません。

関連付けられた単語数に変数を掛けることはできません。

Linuxのbashには次のものがあります。

some_variable= ls *somepattern* | xargs cat | wc -c

たとえば、次のように特定の金額を掛けたいとします。

another_variable = $(($some_variable * 10))

しかし、エラーが発生しました。

  -bash: * 100: syntax error: operand expected (error token is "* 100")

some_variableなぜ掛けてはいけませんかwc

ベストアンサー1

あなたは乗算を得ず、実際にはそこに変数を割り当てません。周囲にスペースがあってはいけません=。以下が必要です。

some_variable=some_value

次に変数を代入するには出力コマンドの場合は、コマンド置換を使用する必要があります。

some_variable=$(some_command)

またはまだサポートされているが廃止予定のバックティック:

some_variable=`some_command`

したがって、必要なものは次のとおりです。

some_variable=$(ls *somepattern* | xargs cat | wc -c)

しかし、これを行う方が良いです:

some_variable=$(cat *somepattern* | wc -c)

これがあれば、次のことができます。

another_variable=$(($some_variable * 10))

最後に、エラーの原因は、最初の部分で説明したように変数が空であり、最終的に次のように実行されることです。

$ another_variable = $(( * 10))
bash: * 10: syntax error: operand expected (error token is "* 10")

おすすめ記事