однострочная оболочка для вывода всех комбинаций букв в слове

Если вы запустите emacsна своем компьютере,(emacsпредустановлено в Ubuntu 18.04 ), вы можете виртуально открыть и просмотреть PDF-файл на удаленном сервере, нажавCtrl-x Ctrl-f(на find-file), а затем введите /user@hostname:/path/to/my.pdfи нажмите Enter (, обратите внимание на самый первый /). Затем вам будет предложено ввести пароль сервера, и вот он! Вы можете увидеть pdf внутри emacs.

Навигация по PDF внутриemacs

Используйте spaceдля перехода на одну страницу вниз и backspaceдля перехода на одну страницу вверх. Вы также можете использовать клавиши со стрелками для прокрутки одной страницы, если она не помещается на экране.

Увеличение

Увеличьте масштаб, нажав Ctrl-x Ctrl-+. Увеличьте масштаб, нажав только +. Или уменьшите масштаб, нажав -.

Контекст

Да, вы можете подключиться к удаленному серверу изнутри emacs, используя сборку -в пакете tramp, которая работает так же просто, как я объяснил выше. Этот метод работает не только для pdf, но и для файлов любого другого типа, например изображений.

-2
15.06.2020, 16:09
2 ответа

баш:

combos () {
    local word=$1
    local len=${#word}
    local first=${word:0:1}
    echo "$first"
    for ((i=1; i < len; i++ )); do
        for ((j=1; i+j <= len; j++ )); do
            echo "$first${word:i:j}"
        done
    done
}

, затем

$ combos fath
f
fa
fat
fath
ft
fth
fh
1
18.03.2021, 23:27

РЕДАКТИРОВАТЬ:

Вот однострочное awkрешение:

echo f a t h | awk '{for(i=0;i<2^NF;i++) { for(j=0;j<NF;j++) {if(and(i,(2^j))) printf "%s",$(j+1)} print ""}}'

Выход


f
a
fa
t
ft
at
fat
h
fh
ah
fah
th
fth
ath
fath

(модифицированная версия реализации этого набора мощностиhttps://stackoverflow.com/questions/40966428/awk-power-set-implementation)

1
18.03.2021, 23:27

Теги

Похожие вопросы