bits not

For bits.

Performs logical negation on each bit.

Command Type

built-in

Signature

> bits not {flags}

Flags

  • --signed, -s: Always treat input number as a signed number.
  • --number-bytes, -n {int}: The size of unsigned number in bytes, it can be 1, 2, 4, 8, auto.

Input/output types:

input output
int int
binary binary
list<int> list<int>
list<binary> list<binary>

Examples

Apply logical negation to a list of numbers

> [4 3 2] | bits not
╭───┬─────╮
│ 0 │ 251 │
│ 1 │ 252 │
│ 2 │ 253 │
╰───┴─────╯

Apply logical negation to a list of numbers, treat input as 2 bytes number

> [4 3 2] | bits not --number-bytes 2
╭───┬───────╮
│ 0 │ 65531 │
│ 1 │ 65532 │
│ 2 │ 65533 │
╰───┴───────╯

Apply logical negation to a list of numbers, treat input as signed number

> [4 3 2] | bits not --signed
╭───┬────╮
│ 0 │ -5 │
│ 1 │ -4 │
│ 2 │ -3 │
╰───┴────╯

Apply logical negation to binary data

> 0x[ff 00 7f] | bits not
Length: 3 (0x3) bytes | null_char printable whitespace ascii_other non_ascii
00000000:   00 ff 80                                             0××

Ported from nushell/nushell.github.io. Copyright (c) 2021 Nushell Project. MIT License.