bash
で数値を1101のようなビットフィールド文字列に変換するには、最も簡潔な方法は何でしょうか?私は「0011010110」のような完全な文字列の形式でビットフィールドを取りますが、多くの場合にのみ必要プログラムにパラメータを送信する必要がある:なぜ効果で数値をbashのビットフィールドに変換する
は私が
echo $[2#1101]
の反対をやろうとしています以下のように1つまたは少数のビットを有効にする:
SUPPRESSbits=$[1<<16] runscript.sh # OR
SUPPRESSbits=$[1<<3 + 1<<9] runscript.sh # much more readable when I know what bits 3 and 9 toggle in the program
は次いでrunscript.shなくSUPPRESSbits="1000000000000000"
よりそのENVでSUPPRESSbits=65536
を見て、解析エラーで終了します。
グレート、それはほとんど 'そこdc'と比べて、より簡潔得ることはできません。だから、「bash」は数字と文字列を組み込んでいないようです – Marcos