находить метки вопроса, когда foundb содержит определенные символы (вкладки), если вывод не передан по каналам

Я locatedb свой собственный locatedb с помощью frcode поэтому он будет содержать файлы после путей (это помогает мне быстро искать большие файлы). Я сохраняю путь, отделенный от размера символом табуляции. Я заметил, что если я использую локализацию в командной строке, я получаю ? (вопросительный знак), где должна быть вкладка, если я не буду ее пересылать на cat , что является странным. Кто-нибудь знает, почему это?

 $ mkdir test-locatedb && cd test-locatedb $ touch abcdefg $ du -a | awk -v 'OFS=\t' '{print $2,$1}' | /path/to/frcode > test.locatedb $ locate --database=test.locatedb a ./test.locatedb?1 ./a?1 $ locate --database=test.locatedb a | cat ./a 1 ./test.locatedb 1 $ /usr/lib/locate/frcode -v frcode (GNU findutils) 4.4.2 ... 

One Solution collect form web for “находить метки вопроса, когда foundb содержит определенные символы (вкладки), если вывод не передан по каналам”

Я подозревал, что это закодировано в locate , проверяя, является ли вывод stdout или нет. И действительно, locate имеет условие для замены непечатаемых символов вопросительными знаками, когда вывод – tty (см. printquoted.c и qmark.c ). Он считает, что пробелы в диапазоне символов управления ASCII также не подлежат печати. Я думаю, что это несчастливо, поскольку никто не ожидал, что выход на терминал изменится при прохождении через cat . Это справедливо и для findutils 4.6.0. Я отправил отчет об ошибке .

  • rs232 для usb не работает
  • Есть ли способ зеркалировать выходы USB?
  • Буферизация каждой строки локально на последовательном терминале
  • Как использовать экран, когда / dev / tty отключен?
  • Только встречается подсказкой «login» tty при загрузке Mint
  • Нет места на ep ring?
  • Конфигурация FreeBSD gettytab
  • Is / sbin / sulogin безопасен?
  • Linux VT Emacs в tmux, разбивает цвет и курсор
  • Звук трубки другому пользователю на том же компьютере (pulseaudio)
  • ERROR: init: ttyS0 (/ dev / ttyS0) основной процесс (1612), завершенный статусом 1
  • Linux и Unix - лучшая ОС в мире.