Как открыть первые 10 файлов в папке, начиная с определенной буквы или цифры?

В моей папке 10 000 файлов, и мне нужно просмотреть все их. Все они называются: A0001.png, A0002.png, A0003.png, … A0100.png, … A0999.png, .. A1000.png, … A09999.png, … A10000.png ,

Я хочу открыть их по десять за раз, посмотреть через них, закрыть их и открыть следующую десятку, но я все еще знаком с использованием терминала, так что я не уверен, как это сделать?

Когда я делаю:

open A000*.png

Это слишком много.

  • Какой процесс занимает определенный псевдотерминал pts / X?
  • Как видеть пароль при вводе текста
  • Отключить -skip-grant-tables в MySQL
  • Как экспортировать / импортировать цветовую схему терминала Ubuntu 16.04
  • Как начать cinelerra на Debian?
  • Как я могу получить более красивые шрифты в моем терминале (URxvt)?
  • Портирование быстрых клавиш GNOME на URXVT
  • Dotfile не работает в текущей оболочке, нужен новый
  • 2 Solutions collect form web for “Как открыть первые 10 файлов в папке, начиная с определенной буквы или цифры?”

    В zsh :

     open A000*.png([1,10]) 

    для первых 10.

    В bash вы всегда можете:

     files=(A000*.png) open "${a[@]:0:10}" 

    Или в цикле:

     while ((${#files[@]})); do open "${files[@]:0:10}" files=("${files[@]:10}") done 

    Это также будет работать в zsh , хотя в zsh вы можете сделать это в немного менее неудобном синтаксисе:

     while (($#files)) { open $files[1,10] files[1,10]=() } 

    Другой вариант – использовать xargs :

     printf '%s\0' A000*.png | xargs -0n10 open 

    Хотя это влияет на open stdin. zsh имеет функцию zargs с аналогичными функциями:

     autoload zargs # in ~/.zshrc zargs -n 10 A000*.png -- open 

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

     open() { image_viewer $argv read -q '?continue? ' || return 255 } 

    Используя петлю и захватывая пользовательский ввод, это может быть достигнуто:

     #!/bin/bash # Store all list of files you want with extension png arr=(./*.png) for ((i=0; i<${#arr[@]};)) do # -s: do not echo input character # -n 1: read only 1 character (separate with space) read -s -n 1 key for ((j=0; j<10; j++, i++)) do if [[ $key = "" ]]; then open "${arr[$i]}"; # <--- This is where you will open your file. fi done done 
    Interesting Posts

    Как проверить двоичную контрольную сумму SHA

    Bash перезаписывает первую строку, приглашение PS1 bash

    Скопируйте файл с удаленного сервера в Windows home с помощью scp

    с использованием простого выражения квантора регулярных выражений в grep

    Как zip рекурсивно все подкаталоги, содержащие только текстовые файлы

    Печать Линия соответствия и n-я строка из согласованной строки

    Могут ли монтировать объемы lvm2 на основе имен устройств, таких как sda, sdb и т. Д., Если их имена изменяются?

    Безопасный способ передачи пароля для> 1 программы в bash

    Как «перекодировать» mp3-файлы

    Что представляет собой стандартная программа (ы) CLI для управления пользователями и группами?

    Выход Cronjob в журнал

    Как связать отдельную станцию ​​с AP Wi-Fi

    Откуда берутся эти записи журнала регистрации и кто их создает?

    Получить MAC-запрос клиента?

    Что означает «следовая ловушка», когда сообщается zsh?

    Linux и Unix - лучшая ОС в мире.