Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
`expr 2 \\* grep -c ",2,1," my_course 文字列「、2、1」を含む行数で2を 掛けようとするようなものを使用しよ うとしていますが、"expr: non-integer argument"エラーが発生します。私はUnixが初めてなので、誰かが私を正しい方向に向けることができます
`expr 2 \\* grep -c ",2,1," my_course
"expr: non-integer argument"
は へのgrep ...引数として解釈されますがexpr、これは単語の文字列が少し好きではありません。次のように、grep を実行し、出力を引数としてキャプチャする必要があります。
grep ...
expr
expr 2 \* $(grep -c ",2,1," my_course)
$(...)内部でプログラムを実行し、返されたものを文字列のリストにします。
$(...)
(これは bash の場合です。他のシェルでは、代わりに逆引用符を使用する必要がある場合があります$(...))