Используйтеmv
:
file='WDMyCloud_plexmediaserver_1.16.1.1291.bin(07082019)'
mv "$file" "${file%.bin*}.bin"
Используйте prename
илиfile-rename
(в Debian/Ubuntu, также известный как простоrename
):
prename -n 's/\.bin.*$/.bin/' WDMyCloud_plexmediaserver_1.16.1.1291.bin\(07082019\)
Удалите -n
, чтобы выполнить переименование.
Если вы хотите увидеть символ Юникода, такой как U+211D, в groff, вам нужно найти шрифт, который его содержит, и предоставить файл метрик шрифта для groff, обычно путем преобразования файла ttf в pfa и добавления его в список.
Один из сайтов, который выполняет поиск -некоторых распространенных шрифтов, — это fileformat.info , который показывает, что большинство DejaVu
шрифтов содержат этот символ, например DejaVu Serif
. В Fedora этот шрифт ttf можно установить из пакета dejavu-sans-fonts
, поэтому я предполагаю, что FreeBSD может иметь что-то подобное. (Если нет, попробуйте один из других подходящих шрифтов ).
В качестве альтернативы, если у вас есть команда fc-match
, вы можете найти уже имеющиеся у вас файлы шрифтов с символом:
fc-match -s -f '%{file}\n' ':charset=211D'
Вам нужно выбрать файлы TrueType (с обычным суффиксом.ttf
)из этого списка.
В качестве альтернативы,если у вас есть команды fc-list
и ttx
, вы можете выполнить медленный поиск по шрифтам ttf имени персонажа с помощью:
fc-list |
sed -n 's/\.ttf:.*/.ttf/p' |
xargs -l -t ttx -t cmap -o - 2>&1 |
grep 'ttx\|DOUBLE-STRUCK CAPITAL R'
Если он находит глиф, он выводит имя файла и совпадение, например:
ttx -t cmap -o - /usr/share/fonts/dejavu/DejaVuSansMono.ttf
<map code="0x211d" name="uni211D"/><!-- DOUBLE-STRUCK CAPITAL R -->
Затем вы можете прочитать объяснение Питера Шаффтера о добавлении шрифтов в groff . Хотя это написано для макросов mom
, это применимо к groff в целом, хотя ваши макросы могут не обрабатывать семейство автоматически. Он удобно предоставляет сценарий оболочки , который сделает всю работу за вас. Может потребоваться некоторая настройка, так как каждый дистрибутив любит размещать файлы в разных местах.
Затем вы можете добавить следующее в свой eqnrc
, например:
define @R '"\f[DejaVuR]\[u211D]\fR"'
Следующие шрифты не нужны:
define in '{type "relation" size +3 \[mo]}'
Набор именованных глифов задокументирован наgroff_char
справочной странице . Я вижу \[mo]
для ∈, но не ℝ.
Вы можете вводить произвольные символы с помощью [uNNNN]
, где NNNN
— шестнадцатеричные цифры, поэтому \[u211D]
для ℝ. Вы также можете использовать ввод UTF -8, т.е. вставить ℝ напрямую. Вы можете определить имя для него с помощью запроса.char
:
.char \[Real] \[u211D]
Мой ответ касается исключительно того, как вы вводите символы. Я не знаю, покрывают ли шрифты, которые использует Грофф, эти символы, или как научить его использовать альтернативные шрифты, если они этого не делают.
Вот как можно создать перечеркнутую букву R в базовом troff/groff, а также в eqn
.
Вы можете использовать команду \h
troff для локального горизонтального перемещения назад от 0.83m
, что составляет часть ширины em .em — это условная единица набора текста, равная ширине символа m
в шрифте. Таким образом, у нас может быть перечеркнутая буква R другой буквой R:
The R\h'-.83m'R space 1.
Чтобы сделать это более читабельным, вы можете определить строку(.ds
)с именем myreal
с этой последовательностью и создать ее экземпляр с помощью\*[myreal]
:
.ds myreal R\h'-.83m'R
The \*[myreal] space 2.
В eqn
вы можете выполнить горизонтальное перемещение с помощью back 50
для перемещения влево на 50/100 от em , поэтому нам нужно R back 50 R
, но вы также хотите использовать латинский шрифт, поэтому было бы лучше определить макросmyreal
:
.EQ
define myreal 'roman { R back 50 R }'
delim $$
.EN
, а затем используйте его. Также определяя встроенные разделители $
и$
(start и end ), вы можете вызывать макрос в тексте, а также в уравнении:
Given an input in subspace $myreal$:
.EQ
x \[mo] myreal sup 2
.EN
Но после всего этого я обнаружил, что eqn предоставляет команду fat
для перечеркивания со смещением. В зависимости от размера шрифта вам может понадобиться поиграть с параметром fat_offset
(, который измеряется в ems/100 ). Поэтому для моего примера выше вы также можете использовать
.EQ
set fat_offset 15
x \[mo] fat roman R sup 2
.EN