title: conditional binary operator expected , what is the problem? (shell)
body: <p>I was trying to write a shell-script that would <strong>print</strong> all the <strong>arguments</strong> passed to the script.
  The condition is, the argument has to either be an <strong>uneven number</strong> or <strong>smaller than 23</strong></p>
  <pre><code>#!/bin/bash
  for (( i=0; i&lt;$#; i++ ));
  do
          if [[ $i % 2 -ne 0 ]] || [[ $i -lt 23 ]];
          then
                  echo $i
          fi
  done
  </code></pre>
  <p>When I try to Run this script as followed <code>sh myScript.sh 1 3 4 6 24 23 22</code>
  My expected output would be <code> 1 , 3 , 4 , 6 , 22 , 23</code></p>
  <p><strong>However</strong> I get the following Error:</p>
  <pre><code>myScript.sh: line 4: conditional binary operator expected
  myScript.sh: line 4: syntax error near `%'
  myScript.sh: line 4: `        if [[ $i % 2 -ne 0 ]] || [[ $i -lt 23 ]];'
  </code></pre>
  <p>Can anyone help me understand what the error means?</p>
  <p>Thank you!</p>