34

の結果を割り当てる方法

grep -c "some text" /tmp/somePath

エコーできるように変数に入れます。

#!/bin/bash
some_var = grep -c "some text" /tmp/somePath
echo "var value is: ${some_var}"

私も試しました:

some_var = 'grep -c \"some text\" /tmp/somePath'

しかし、私は取得し続けます: command not found.

4

3 に答える 3

69

コマンドの出力を割り当てるには、var=$(cmd)(スクリプトをそこに貼り付けるとshellcheckが自動的に通知するため)を使用します。

#!/bin/bash
some_var=$(grep -c "some text" /tmp/somePath)
echo "var value is: ${some_var}"
于 2013-05-01T22:18:15.663 に答える
32


問題が見つかりました
その割り当て、これはうまくいきます:

some_var=$(command)


これはうまくいきませんが:

some_var = $(command)


ご協力ありがとうございました!最初の役立つ回答を受け入れます。

于 2013-05-01T22:22:00.457 に答える
3
some_var=$(grep -c "some text" /tmp/somePath)

からman bash:

   Command substitution allows the output of a command to replace the com‐
   mand name.  There are two forms:

          $(command)
   or
          `command`

   Bash performs the expansion by executing command and replacing the com‐
   mand substitution with the standard output of  the  command,  with  any
   trailing newlines deleted.
于 2013-05-01T22:18:03.333 に答える