Как искать содержимое в каталоге с терминала, пока вы находитесь в середине написания команды?

Я пытаюсь успокоиться с терминалом, используя его как можно больше. Аспект использования моего компьютера, когда я теряю больше всего времени, используя командную строку вместо gui, - это когда я пытаюсь найти песню, которую меня интересует.

Моя музыкальная папка структурирована так же, как Music-> Bands- > Альбомы-> Песни

Я часто забываю, что Music-> Bands-> Albums-> Songs есть песня, но я всегда помню, что Band играл эту песню.

Я не ищу песню из каталога Song , потому что слишком долго искать песню (у меня много музыки), поэтому я ищу песню после того, как я доберусь до каталог группы. Прямо сейчас в командной строке у меня есть

# totem /home/user/Music/Red\ Hot\ Chili\ Peppers/

, но я забыл, что Band Band находится в «Dani California» (тотем - это музыкальный плеер в gnome.) Самый быстрый способ обойти это - попасть в папку Red Hot Chili Peppers в файловом менеджере gui и нажать ctrl + f и набрать «Dani California».

Есть ли Я могу искать содержимое в каталоге с терминала, пока я нахожусь в середине написания команды? Или у вас есть рекомендации о том, как я могу быстрее достичь той же цели, которую я делаю в gui из командной строки?

2
задан 5 September 2011 в 07:17

30 ответов

Это не особенно интуитивно понятно, поскольку автозаполнение не работает, но вы можете добиться того, что хотите, используя маски файлов:

totem /home/user/Music/Red\ Hot\ Chili\ Peppers/*/Dani\ Ca*

Другой вариант - использовать find, а затем заставить его передать имена файлов он нашел тотем:

find . -name "Dani Calif*" -exec totem '{}' +

Хотя это не совсем «поиск во время написания команды»

2
ответ дан 25 May 2018 в 18:59

Это не особенно интуитивно понятно, поскольку автозаполнение не работает, но вы можете добиться того, что хотите, используя маски файлов:

totem /home/user/Music/Red\ Hot\ Chili\ Peppers/*/Dani\ Ca*

Другой вариант - использовать find, а затем заставить его передать имена файлов он нашел тотем:

find . -name "Dani Calif*" -exec totem '{}' +

Хотя это не совсем «поиск во время написания команды»

2
ответ дан 25 July 2018 в 21:22

Это не особенно интуитивно понятно, поскольку автозаполнение не работает, но вы можете добиться того, что хотите, используя маски файлов:

totem /home/user/Music/Red\ Hot\ Chili\ Peppers/*/Dani\ Ca*

Другой вариант - использовать find, а затем заставить его передать имена файлов он нашел тотем:

find . -name "Dani Calif*" -exec totem '{}' +

Хотя это не совсем «поиск во время написания команды»

2
ответ дан 2 August 2018 в 03:01

Это не особенно интуитивно понятно, поскольку автозаполнение не работает, но вы можете добиться того, что хотите, используя маски файлов:

totem /home/user/Music/Red\ Hot\ Chili\ Peppers/*/Dani\ Ca*

Другой вариант - использовать find, а затем заставить его передать имена файлов он нашел тотем:

find . -name "Dani Calif*" -exec totem '{}' +

Хотя это не совсем «поиск во время написания команды»

2
ответ дан 4 August 2018 в 18:51

Это не особенно интуитивно понятно, поскольку автозаполнение не работает, но вы можете добиться того, что хотите, используя маски файлов:

totem /home/user/Music/Red\ Hot\ Chili\ Peppers/*/Dani\ Ca*

Другой вариант - использовать find, а затем заставить его передать имена файлов он нашел тотем:

find . -name "Dani Calif*" -exec totem '{}' +

Хотя это не совсем «поиск во время написания команды»

2
ответ дан 6 August 2018 в 03:14

Это не особенно интуитивно понятно, поскольку автозаполнение не работает, но вы можете добиться того, что хотите, используя маски файлов:

totem /home/user/Music/Red\ Hot\ Chili\ Peppers/*/Dani\ Ca*

Другой вариант - использовать find, а затем заставить его передать имена файлов он нашел тотем:

find . -name "Dani Calif*" -exec totem '{}' +

Хотя это не совсем «поиск во время написания команды»

2
ответ дан 7 August 2018 в 20:55

Дважды нажмите «вкладку», чтобы указать список файлов или каталогов. Затем просто введите часть той, которую вы хотите, и нажмите «вкладку», чтобы завершить ее.

0
ответ дан 25 May 2018 в 18:59
  • 1
    Но представьте себе, что у него есть 10 альбомов от какого-то художника, и он не знает, из какого альбома песня (что стыдно, LedZeppelin, кстати - Dani California от Stadium Arcadium :)). Используя автозаполнение, он должен будет перебирать все альбомы один за другим, пока не найдет его. Вот о чем идет речь, поскольку я понимаю – Sergey 5 September 2011 в 08:33
  • 2
    Хех, да, я знаю, что это со стадиона arcadium. Я очень скучаю по Джону ... его высокие ноты, за которыми следуют низкие ноты и его акцент на эмоциях и мелодиях ... – user784637 5 September 2011 в 10:06

Действительно интересный вопрос. Это довольно аккуратный способ заставить себя использовать CLI. Но человек, который звучит слишком болезненно для музыки. Я не вижу, как я могу жить с пределами Тотема (против Банши или Ритмбокса). Я бы подумал, что запретить вам использовать Nautilus и gedit достаточно далеко, чтобы заставить вас чаще использовать терминал.

Но я восхищаюсь вашим терпением и дисциплиной. Возможно, вам захочется заглянуть в музыкальный плеер, ориентированный на CLI / Terminal. Вот хороший обзор некоторых: http://www.linux.com/archive/feature/124907

Извините заранее, если ни одна из них не решит конкретную проблему, о которой вы просите, но учитывая предысторию вашего вопроса, я думаю, вы можете найти эти варианты интересными, тем не менее. Удачи.

0
ответ дан 25 May 2018 в 18:59
  • 1
    Не уверен, должен ли я указывать это как не релевантный или нет. Но учитывая тот факт, что pm не поддерживается, возможно, я не должен. – Mahesh 13 April 2012 в 00:29

Уже предлагаемое решение метачара велико, но иногда этого было недостаточно.

Я использую часто больше, чем терминал за раз, мультиплексируя одно окно с помощью screen, но gnome- вкладки терминала могли бы также выполнять эту работу (я должен отметить, что решение screen будет работать также в сеансе ssh или в виртуальном терминале, поэтому оно более общее).

Итак, переключение на другой терминал, вы можете использовать команду locate, результаты которой получаются гораздо быстрее, чем с find.

0
ответ дан 25 May 2018 в 18:59

Он также может быть выполнен с помощью программируемого завершения Bash. Я собрал небольшой образец сценария.

В приведенном ниже скрипте выполняется команда fap (поиск и воспроизведение), которую вы должны определить отдельно, например

fap [ ! d4]

#! /bin/sh
file="$2"
totem "$file" > /dev/null &
exit 0

Затем поместите следующий скрипт в каталог /etc/bash_completion.d

/etc/bash_completion.d/fap

_fap()
{
    local cur prev dir i saveIFS

    COMPREPLY=()
    _get_comp_words_by_ref cur prev

    saveIFS=$IFS
    IFS=$'\n'    
    dir="$cur"
    if [ -z "$cur" ]; then
        dir="/home/user/music"
    elif ! [ -d "$cur" ]; then
        dir="`dirname "$cur"`"
    fi

    local files=$(find `dequote "$dir"` -type f -iname "*${prev}*" -printf "%p\n")
    COMPREPLY=( $( compgen -W "${files}" -- $cur ) )

    for ((i=0; i < ${#COMPREPLY[@]}; i++)); do
        _quote_readline_by_ref ${COMPREPLY[i]} COMPREPLY[i]
    done

    IFS=$saveIFS

    return 0
} &&
complete -F _fap -o nospace fap

Измените строку dir="/home/user/music" соответственно (стартовая папка для вашей музыкальной коллекции). Следующий исходный код сценария

. /etc/bash_completion.d/fap

Теперь вы можете использовать завершение TAB как это

fap frozen [TAB]
fap frozen /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/09\ -\ Madonna\ -\ Frozen.mp3

или, если есть больше опций

$ fap girl [TAB]
$ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/[TAB][TAB]
/home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
/home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/13\ -\ Madonna\ -\ Mer\ Girl.mp3
$ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/0[TAB]
$ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
0
ответ дан 25 May 2018 в 18:59

Он также может быть выполнен с помощью программируемого завершения Bash. Я собрал небольшой образец сценария.

В приведенном ниже скрипте выполняется команда fap (поиск и воспроизведение), которую вы должны определить отдельно, например

fap [ ! d4] #! /bin/sh file="$2" totem "$file" > /dev/null & exit 0

Затем поместите следующий скрипт в каталог /etc/bash_completion.d

/etc/bash_completion.d/fap

_fap() { local cur prev dir i saveIFS COMPREPLY=() _get_comp_words_by_ref cur prev saveIFS=$IFS IFS=$'\n' dir="$cur" if [ -z "$cur" ]; then dir="/home/user/music" elif ! [ -d "$cur" ]; then dir="`dirname "$cur"`" fi local files=$(find `dequote "$dir"` -type f -iname "*${prev}*" -printf "%p\n") COMPREPLY=( $( compgen -W "${files}" -- $cur ) ) for ((i=0; i < ${#COMPREPLY[@]}; i++)); do _quote_readline_by_ref ${COMPREPLY[i]} COMPREPLY[i] done IFS=$saveIFS return 0 } && complete -F _fap -o nospace fap

Измените строку dir="/home/user/music" соответственно (стартовая папка для вашей музыкальной коллекции). Следующий исходный код сценария

. /etc/bash_completion.d/fap

Теперь вы можете использовать завершение TAB как это

fap frozen [TAB] fap frozen /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/09\ -\ Madonna\ -\ Frozen.mp3

или, если есть больше опций

$ fap girl [TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/[TAB][TAB] /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3 /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/13\ -\ Madonna\ -\ Mer\ Girl.mp3 $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/0[TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
0
ответ дан 25 July 2018 в 21:22

Дважды нажмите «вкладку», чтобы указать список файлов или каталогов. Затем просто введите часть той, которую вы хотите, и нажмите «вкладку», чтобы завершить ее.

0
ответ дан 25 July 2018 в 21:22
  • 1
    Но представьте себе, что у него есть 10 альбомов от какого-то художника, и он не знает, из какого альбома песня (что стыдно, LedZeppelin, кстати - Dani California от Stadium Arcadium :)). Используя автозаполнение, он должен будет перебирать все альбомы один за другим, пока не найдет его. Вот о чем идет речь, поскольку я понимаю – Sergey 5 September 2011 в 08:33
  • 2
    Хех, да, я знаю, что это со стадиона arcadium. Я очень скучаю по Джону ... его высокие ноты, за которыми следуют низкие ноты и его акцент на эмоциях и мелодиях ... – user784637 5 September 2011 в 10:06

Уже предлагаемое решение метачара велико, но иногда этого было недостаточно.

Я использую часто больше, чем терминал за раз, мультиплексируя одно окно с помощью screen, но gnome- вкладки терминала могли бы также выполнять эту работу (я должен отметить, что решение screen будет работать также в сеансе ssh или в виртуальном терминале, поэтому оно более общее).

Итак, переключение на другой терминал, вы можете использовать команду locate, результаты которой получаются гораздо быстрее, чем с find.

0
ответ дан 25 July 2018 в 21:22

Действительно интересный вопрос. Это довольно аккуратный способ заставить себя использовать CLI. Но человек, который звучит слишком болезненно для музыки. Я не вижу, как я могу жить с пределами Тотема (против Банши или Ритмбокса). Я бы подумал, что запретить вам использовать Nautilus и gedit достаточно далеко, чтобы заставить вас чаще использовать терминал.

Но я восхищаюсь вашим терпением и дисциплиной. Возможно, вам захочется заглянуть в музыкальный плеер, ориентированный на CLI / Terminal. Вот хороший обзор некоторых: http://www.linux.com/archive/feature/124907

Извините заранее, если ни одна из них не решит конкретную проблему, о которой вы просите, но учитывая предысторию вашего вопроса, я думаю, вы можете найти эти варианты интересными, тем не менее. Удачи.

0
ответ дан 25 July 2018 в 21:22
  • 1
    Не уверен, должен ли я указывать это как не релевантный или нет. Но учитывая тот факт, что pm не поддерживается, возможно, я не должен. – Mahesh 13 April 2012 в 00:29

Он также может быть выполнен с помощью программируемого завершения Bash. Я собрал небольшой образец сценария.

В приведенном ниже скрипте выполняется команда fap (поиск и воспроизведение), которую вы должны определить отдельно, например

fap [ ! d4] #! /bin/sh file="$2" totem "$file" > /dev/null & exit 0

Затем поместите следующий скрипт в каталог /etc/bash_completion.d

/etc/bash_completion.d/fap

_fap() { local cur prev dir i saveIFS COMPREPLY=() _get_comp_words_by_ref cur prev saveIFS=$IFS IFS=$'\n' dir="$cur" if [ -z "$cur" ]; then dir="/home/user/music" elif ! [ -d "$cur" ]; then dir="`dirname "$cur"`" fi local files=$(find `dequote "$dir"` -type f -iname "*${prev}*" -printf "%p\n") COMPREPLY=( $( compgen -W "${files}" -- $cur ) ) for ((i=0; i < ${#COMPREPLY[@]}; i++)); do _quote_readline_by_ref ${COMPREPLY[i]} COMPREPLY[i] done IFS=$saveIFS return 0 } && complete -F _fap -o nospace fap

Измените строку dir="/home/user/music" соответственно (стартовая папка для вашей музыкальной коллекции). Следующий исходный код сценария

. /etc/bash_completion.d/fap

Теперь вы можете использовать завершение TAB как это

fap frozen [TAB] fap frozen /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/09\ -\ Madonna\ -\ Frozen.mp3

или, если есть больше опций

$ fap girl [TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/[TAB][TAB] /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3 /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/13\ -\ Madonna\ -\ Mer\ Girl.mp3 $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/0[TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
0
ответ дан 2 August 2018 в 03:01

Дважды нажмите «вкладку», чтобы указать список файлов или каталогов. Затем просто введите часть той, которую вы хотите, и нажмите «вкладку», чтобы завершить ее.

0
ответ дан 2 August 2018 в 03:01
  • 1
    Но представьте себе, что у него есть 10 альбомов от какого-то художника, и он не знает, из какого альбома песня (что стыдно, LedZeppelin, кстати - Dani California от Stadium Arcadium :)). Используя автозаполнение, он должен будет перебирать все альбомы один за другим, пока не найдет его. Вот о чем идет речь, поскольку я понимаю – Sergey 5 September 2011 в 08:33
  • 2
    Хех, да, я знаю, что это со стадиона arcadium. Я очень скучаю по Джону ... его высокие ноты, за которыми следуют низкие ноты и его акцент на эмоциях и мелодиях ... – user784637 5 September 2011 в 10:06

Уже предлагаемое решение метачара велико, но иногда этого было недостаточно.

Я использую часто больше, чем терминал за раз, мультиплексируя одно окно с помощью screen, но gnome- вкладки терминала могли бы также выполнять эту работу (я должен отметить, что решение screen будет работать также в сеансе ssh или в виртуальном терминале, поэтому оно более общее).

Итак, переключение на другой терминал, вы можете использовать команду locate, результаты которой получаются гораздо быстрее, чем с find.

0
ответ дан 2 August 2018 в 03:01

Действительно интересный вопрос. Это довольно аккуратный способ заставить себя использовать CLI. Но человек, который звучит слишком болезненно для музыки. Я не вижу, как я могу жить с пределами Тотема (против Банши или Ритмбокса). Я бы подумал, что запретить вам использовать Nautilus и gedit достаточно далеко, чтобы заставить вас чаще использовать терминал.

Но я восхищаюсь вашим терпением и дисциплиной. Возможно, вам захочется заглянуть в музыкальный плеер, ориентированный на CLI / Terminal. Вот хороший обзор некоторых: http://www.linux.com/archive/feature/124907

Извините заранее, если ни одна из них не решит конкретную проблему, о которой вы просите, но учитывая предысторию вашего вопроса, я думаю, вы можете найти эти варианты интересными, тем не менее. Удачи.

0
ответ дан 2 August 2018 в 03:01
  • 1
    Не уверен, должен ли я указывать это как не релевантный или нет. Но учитывая тот факт, что pm не поддерживается, возможно, я не должен. – Mahesh 13 April 2012 в 00:29

Он также может быть выполнен с помощью программируемого завершения Bash. Я собрал небольшой образец сценария.

В приведенном ниже скрипте выполняется команда fap (поиск и воспроизведение), которую вы должны определить отдельно, например

fap [ ! d4] #! /bin/sh file="$2" totem "$file" > /dev/null & exit 0

Затем поместите следующий скрипт в каталог /etc/bash_completion.d

/etc/bash_completion.d/fap

_fap() { local cur prev dir i saveIFS COMPREPLY=() _get_comp_words_by_ref cur prev saveIFS=$IFS IFS=$'\n' dir="$cur" if [ -z "$cur" ]; then dir="/home/user/music" elif ! [ -d "$cur" ]; then dir="`dirname "$cur"`" fi local files=$(find `dequote "$dir"` -type f -iname "*${prev}*" -printf "%p\n") COMPREPLY=( $( compgen -W "${files}" -- $cur ) ) for ((i=0; i < ${#COMPREPLY[@]}; i++)); do _quote_readline_by_ref ${COMPREPLY[i]} COMPREPLY[i] done IFS=$saveIFS return 0 } && complete -F _fap -o nospace fap

Измените строку dir="/home/user/music" соответственно (стартовая папка для вашей музыкальной коллекции). Следующий исходный код сценария

. /etc/bash_completion.d/fap

Теперь вы можете использовать завершение TAB как это

fap frozen [TAB] fap frozen /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/09\ -\ Madonna\ -\ Frozen.mp3

или, если есть больше опций

$ fap girl [TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/[TAB][TAB] /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3 /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/13\ -\ Madonna\ -\ Mer\ Girl.mp3 $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/0[TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
0
ответ дан 4 August 2018 в 18:51

Дважды нажмите «вкладку», чтобы указать список файлов или каталогов. Затем просто введите часть той, которую вы хотите, и нажмите «вкладку», чтобы завершить ее.

0
ответ дан 4 August 2018 в 18:51
  • 1
    Но представьте себе, что у него есть 10 альбомов от какого-то художника, и он не знает, из какого альбома песня (что стыдно, LedZeppelin, кстати - Dani California от Stadium Arcadium :)). Используя автозаполнение, он должен будет перебирать все альбомы один за другим, пока не найдет его. Вот о чем идет речь, поскольку я понимаю – Sergey 5 September 2011 в 08:33
  • 2
    Хех, да, я знаю, что это со стадиона arcadium. Я очень скучаю по Джону ... его высокие ноты, за которыми следуют низкие ноты и его акцент на эмоциях и мелодиях ... – user784637 5 September 2011 в 10:06

Уже предлагаемое решение метачара велико, но иногда этого было недостаточно.

Я использую часто больше, чем терминал за раз, мультиплексируя одно окно с помощью screen, но gnome- вкладки терминала могли бы также выполнять эту работу (я должен отметить, что решение screen будет работать также в сеансе ssh или в виртуальном терминале, поэтому оно более общее).

Итак, переключение на другой терминал, вы можете использовать команду locate, результаты которой получаются гораздо быстрее, чем с find.

0
ответ дан 4 August 2018 в 18:51

Действительно интересный вопрос. Это довольно аккуратный способ заставить себя использовать CLI. Но человек, который звучит слишком болезненно для музыки. Я не вижу, как я могу жить с пределами Тотема (против Банши или Ритмбокса). Я бы подумал, что запретить вам использовать Nautilus и gedit достаточно далеко, чтобы заставить вас чаще использовать терминал.

Но я восхищаюсь вашим терпением и дисциплиной. Возможно, вам захочется заглянуть в музыкальный плеер, ориентированный на CLI / Terminal. Вот хороший обзор некоторых: http://www.linux.com/archive/feature/124907

Извините заранее, если ни одна из них не решит конкретную проблему, о которой вы просите, но учитывая предысторию вашего вопроса, я думаю, вы можете найти эти варианты интересными, тем не менее. Удачи.

0
ответ дан 4 August 2018 в 18:51
  • 1
    Не уверен, должен ли я указывать это как не релевантный или нет. Но учитывая тот факт, что pm не поддерживается, возможно, я не должен. – Mahesh 13 April 2012 в 00:29

Он также может быть выполнен с помощью программируемого завершения Bash. Я собрал небольшой образец сценария.

В приведенном ниже скрипте выполняется команда fap (поиск и воспроизведение), которую вы должны определить отдельно, например

fap [ ! d4] #! /bin/sh file="$2" totem "$file" > /dev/null & exit 0

Затем поместите следующий скрипт в каталог /etc/bash_completion.d

/etc/bash_completion.d/fap

_fap() { local cur prev dir i saveIFS COMPREPLY=() _get_comp_words_by_ref cur prev saveIFS=$IFS IFS=$'\n' dir="$cur" if [ -z "$cur" ]; then dir="/home/user/music" elif ! [ -d "$cur" ]; then dir="`dirname "$cur"`" fi local files=$(find `dequote "$dir"` -type f -iname "*${prev}*" -printf "%p\n") COMPREPLY=( $( compgen -W "${files}" -- $cur ) ) for ((i=0; i < ${#COMPREPLY[@]}; i++)); do _quote_readline_by_ref ${COMPREPLY[i]} COMPREPLY[i] done IFS=$saveIFS return 0 } && complete -F _fap -o nospace fap

Измените строку dir="/home/user/music" соответственно (стартовая папка для вашей музыкальной коллекции). Следующий исходный код сценария

. /etc/bash_completion.d/fap

Теперь вы можете использовать завершение TAB как это

fap frozen [TAB] fap frozen /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/09\ -\ Madonna\ -\ Frozen.mp3

или, если есть больше опций

$ fap girl [TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/[TAB][TAB] /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3 /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/13\ -\ Madonna\ -\ Mer\ Girl.mp3 $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/0[TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
0
ответ дан 6 August 2018 в 03:14

Дважды нажмите «вкладку», чтобы указать список файлов или каталогов. Затем просто введите часть той, которую вы хотите, и нажмите «вкладку», чтобы завершить ее.

0
ответ дан 6 August 2018 в 03:14
  • 1
    Но представьте себе, что у него есть 10 альбомов от какого-то художника, и он не знает, из какого альбома песня (что стыдно, LedZeppelin, кстати - Dani California от Stadium Arcadium :)). Используя автозаполнение, он должен будет перебирать все альбомы один за другим, пока не найдет его. Вот о чем идет речь, поскольку я понимаю – Sergey 5 September 2011 в 08:33
  • 2
    Хех, да, я знаю, что это со стадиона arcadium. Я очень скучаю по Джону ... его высокие ноты, за которыми следуют низкие ноты и его акцент на эмоциях и мелодиях ... – user784637 5 September 2011 в 10:06

Уже предлагаемое решение метачара велико, но иногда этого было недостаточно.

Я использую часто больше, чем терминал за раз, мультиплексируя одно окно с помощью screen, но gnome- вкладки терминала могли бы также выполнять эту работу (я должен отметить, что решение screen будет работать также в сеансе ssh или в виртуальном терминале, поэтому оно более общее).

Итак, переключение на другой терминал, вы можете использовать команду locate, результаты которой получаются гораздо быстрее, чем с find.

0
ответ дан 6 August 2018 в 03:14

Действительно интересный вопрос. Это довольно аккуратный способ заставить себя использовать CLI. Но человек, который звучит слишком болезненно для музыки. Я не вижу, как я могу жить с пределами Тотема (против Банши или Ритмбокса). Я бы подумал, что запретить вам использовать Nautilus и gedit достаточно далеко, чтобы заставить вас чаще использовать терминал.

Но я восхищаюсь вашим терпением и дисциплиной. Возможно, вам захочется заглянуть в музыкальный плеер, ориентированный на CLI / Terminal. Вот хороший обзор некоторых: http://www.linux.com/archive/feature/124907

Извините заранее, если ни одна из них не решит конкретную проблему, о которой вы просите, но учитывая предысторию вашего вопроса, я думаю, вы можете найти эти варианты интересными, тем не менее. Удачи.

0
ответ дан 6 August 2018 в 03:14
  • 1
    Не уверен, должен ли я указывать это как не релевантный или нет. Но учитывая тот факт, что pm не поддерживается, возможно, я не должен. – Mahesh 13 April 2012 в 00:29

Он также может быть выполнен с помощью программируемого завершения Bash. Я собрал небольшой образец сценария.

В приведенном ниже скрипте выполняется команда fap (поиск и воспроизведение), которую вы должны определить отдельно, например

fap [ ! d4] #! /bin/sh file="$2" totem "$file" > /dev/null & exit 0

Затем поместите следующий скрипт в каталог /etc/bash_completion.d

/etc/bash_completion.d/fap

_fap() { local cur prev dir i saveIFS COMPREPLY=() _get_comp_words_by_ref cur prev saveIFS=$IFS IFS=$'\n' dir="$cur" if [ -z "$cur" ]; then dir="/home/user/music" elif ! [ -d "$cur" ]; then dir="`dirname "$cur"`" fi local files=$(find `dequote "$dir"` -type f -iname "*${prev}*" -printf "%p\n") COMPREPLY=( $( compgen -W "${files}" -- $cur ) ) for ((i=0; i < ${#COMPREPLY[@]}; i++)); do _quote_readline_by_ref ${COMPREPLY[i]} COMPREPLY[i] done IFS=$saveIFS return 0 } && complete -F _fap -o nospace fap

Измените строку dir="/home/user/music" соответственно (стартовая папка для вашей музыкальной коллекции). Следующий исходный код сценария

. /etc/bash_completion.d/fap

Теперь вы можете использовать завершение TAB как это

fap frozen [TAB] fap frozen /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/09\ -\ Madonna\ -\ Frozen.mp3

или, если есть больше опций

$ fap girl [TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/[TAB][TAB] /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3 /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/13\ -\ Madonna\ -\ Mer\ Girl.mp3 $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/0[TAB] $ fap girl /home/user/music/MADONNA\ -\ RAY\ OF\ LIGHT/TRACKS/04\ -\ Madonna\ -\ Candy\ Perfume\ Girl.mp3
0
ответ дан 7 August 2018 в 20:55

Дважды нажмите «вкладку», чтобы указать список файлов или каталогов. Затем просто введите часть той, которую вы хотите, и нажмите «вкладку», чтобы завершить ее.

0
ответ дан 7 August 2018 в 20:55
  • 1
    Но представьте себе, что у него есть 10 альбомов от какого-то художника, и он не знает, из какого альбома песня (что стыдно, LedZeppelin, кстати - Dani California от Stadium Arcadium :)). Используя автозаполнение, он должен будет перебирать все альбомы один за другим, пока не найдет его. Вот о чем идет речь, поскольку я понимаю – Sergey 5 September 2011 в 08:33
  • 2
    Хех, да, я знаю, что это со стадиона arcadium. Я очень скучаю по Джону ... его высокие ноты, за которыми следуют низкие ноты и его акцент на эмоциях и мелодиях ... – user784637 5 September 2011 в 10:06

Уже предлагаемое решение метачара велико, но иногда этого было недостаточно.

Я использую часто больше, чем терминал за раз, мультиплексируя одно окно с помощью screen, но gnome- вкладки терминала могли бы также выполнять эту работу (я должен отметить, что решение screen будет работать также в сеансе ssh или в виртуальном терминале, поэтому оно более общее).

Итак, переключение на другой терминал, вы можете использовать команду locate, результаты которой получаются гораздо быстрее, чем с find.

0
ответ дан 7 August 2018 в 20:55

Действительно интересный вопрос. Это довольно аккуратный способ заставить себя использовать CLI. Но человек, который звучит слишком болезненно для музыки. Я не вижу, как я могу жить с пределами Тотема (против Банши или Ритмбокса). Я бы подумал, что запретить вам использовать Nautilus и gedit достаточно далеко, чтобы заставить вас чаще использовать терминал.

Но я восхищаюсь вашим терпением и дисциплиной. Возможно, вам захочется заглянуть в музыкальный плеер, ориентированный на CLI / Terminal. Вот хороший обзор некоторых: http://www.linux.com/archive/feature/124907

Извините заранее, если ни одна из них не решит конкретную проблему, о которой вы просите, но учитывая предысторию вашего вопроса, я думаю, вы можете найти эти варианты интересными, тем не менее. Удачи.

0
ответ дан 7 August 2018 в 20:55
  • 1
    Не уверен, должен ли я указывать это как не релевантный или нет. Но учитывая тот факт, что pm не поддерживается, возможно, я не должен. – Mahesh 13 April 2012 в 00:29

Другие вопросы по тегам:

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