Используя цикл и перехватывая пользовательский ввод, можно получить:
#!/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
Это сложная проблема, потому что они несовместимы по многим причинам, и поэтому прямое преобразование из одного в другое, как правило, очень сложно.
apt
(apt-get
)— это менеджер пакетов для установки пакетов в стиле Debian .dpkg
и их зависимостей.
yum
— это менеджер пакетов для установки пакетов в стиле красной -шляпы .rpm
и их зависимостей.
Прежде чем вы начнете обсуждать вопросы прямой совместимости между. dpkg
и .rpm
существует более общая проблема, заключающаяся в том, что зависимости .dpkg
/apt-get
будут вычислены для Raspbian . Они не будут соответствовать зависимостям для CentOS. Две операционные системы не только используют разные имена пакетов, но и имеют разные установленные версии соответствующих пакетов.Это означает, что даже в другой операционной системе, подобной Debian -, такой как Ubuntu, у вас могут возникнуть проблемы.
Короче говоря, пакеты .dpkg
/apt-get
не будут вам полезны в CentOS.
Поскольку пакет, который вы пытаетесь установить, связан с Python, существует третий менеджер пакетов, который должен знать:pip . Этот можно установить вместе с yum, но помните, что при установке с yum вы также позволяете yum обновлять эти пакеты по мере появления новых. С pip вам нужно будет периодически просить pip обновляться, потому что yum не сделает этого за вас.
Вы можете попробовать выполнить поиск в командной строке :, например yum search pil
. Но, честно говоря, я предпочитаю Google для этой задачи. Это дает вам гораздо больше контекста для синонимов имен пакетов. На самом деле у вас нет большого выбора, кроме как самостоятельно работать с названными зависимостями и находить аналогичные пакеты для CentOS и/или pip. Это потребует много времени в Google, чтобы разработать правильный список.
Например (при установке с yum
, а не pip
), инструкция для:
sudo apt-get install python-pil python-smbus python-dateutil -y
Здесь я бы погуглил три вещи:
В итоге я стал устанавливать пакеты с помощью yum:
yum install python-pillow i2c-tools-python python-dateutil
Обратите внимание, что python-pil
стало python-pillow
. Это форк того же пакета, но мы надеемся, что он будет совместим. Заметьте также, что python-smbus
стало i2c-tools-python
. Похоже, это правильное имя пакета в Centos
Если вы действительно не можете найти нужный пакет Python в виде RPM, возможно, вам придется установить его с помощью pip .
Как я упоминал ранее, версии пакетов могут не совпадать, что означает сбой зависимостей.Когда ты установил все что можно, а оно все равно не работает. Ваш следующий шаг должен состоять в том, чтобы вернуться к специалистам по сопровождению программного обеспечения (на GitHub )и вежливо спросить их , не могли бы они в середине помочь вам разобраться с зависимостями CentOS.
Я полагаю, что то, что доставляет тебе неприятности,:
# Install dependencies
sudo apt-get install git bc i2c-tools fonts-freefont-ttf whiptail make gcc -y
# For Python 2
sudo apt-get install python-pil python-smbus python-dateutil -y
# For Python 3
sudo apt-get install python3-pil python3-smbus python3-dateutil -y
Сначала я бы посоветовал убедиться, что установлен выпуск epel -(дополнительный репозиторий для yum):
yum -y install epel-release
теперь вы можете найти эквивалент для каждого из этих пакетов и установить его :например:
yum search i2c
дал мне:
i2c-tools.x86_64 : A heterogeneous set of I2C tools for Linux
i2c-tools-eepromer.x86_64 : Programs for reading / writing i2c / smbus eeproms
i2c-tools-python.x86_64 : Python bindings for Linux SMBus access through i2c-dev
к счастью, у пакета такое же имя; Таким образом, я могу бежать:
yum install i2c-tools
Если повезет; все имена пакетов будут одинаковыми; но возможно, что некоторые отличаются. просто попробуй:)