У меня были проблемы с подходом tr -d '\n'
.На OSX я установил пакет coreutils через brew install coreutils
.Это обеспечивает все «обычные» утилиты GNU с префиксом g перед их типичными именами.Так, например, head
будет ghead
.
Использование этого сработало более безопасно IMO:
pwd | ghead -c -1 | pbcopy
Вы можете использовать od
, чтобы увидеть, что происходит с выводом:
$ pwd | ghead -c -1 | /usr/bin/od -h
0000000 552f 6573 7372 732f 696d 676e 6c6f 6c65
0000020 696c
0000022
против
$ pwd | /usr/bin/od -h
0000000 552f 6573 7372 732f 696d 676e 6c6f 6c65
0000020 696c 000a
0000023
Разница?
00
и 0a
- это шестнадцатеричные коды для nul и новой строки.ghead -c -1
просто «разбивает» последний символ из вывода перед передачей его на | pbcopy
.
$ man ascii | grep -E '\b00\b|\b0a\b'
00 nul 01 soh 02 stx 03 etx 04 eot 05 enq 06 ack 07 bel
08 bs 09 ht 0a nl 0b vt 0c np 0d cr 0e so 0f si