Я написал сценарий для этого:
#! /bin/bash # is: Inline file search script # Save as: /usr/bin/is and mark executable filename="$1" echo -n "Enter the command name: " commandName="" while [ -z "$commandName" ]; do read commandName done exec $commandName $filenameЧтобы добавить автозаполнение к скрипту:
# Save as: /etc/bash/completion.d/is _is() { local cur prev opts COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" if [[ ${cur} == * ]]; then COMPREPLY=( $(find ./ -maxdepth 1 -iname "*${cur}*" | cut -d '/' -f 2) ) return 0 fi } complete -F _is isЭто встроенная утилита поиска файлов.
Предположим, вы находитесь в каталоге с большим количеством файлов. Вы хотите найти файл, но помните его имя только в битах и кусках.
Например, если вы просто помните oracle, все, что вам нужно сделать, это:
Перейдите в каталог cd /path/to/the/directory Просмотрите каталог is oracle Он покажет вам список всех файлов, имеющих oracle в их имена. Затем вы можете изменить аргумент и нажать TAB, чтобы выбрать конкретный файл. Затем нажмите Enter, чтобы выбрать программу для открытия этого файла.