Что касается https://launchpad.net/~versable/+archive/ubuntu/elementary-update , этот ppa не имеет пакетов для 14.04 ( он же верный).
Если вы используете Ubuntu https://launchpad.net/~elementary-os/+archive/ubuntu/stable , который дает следующие строки:
deb http: //ppa.launchpad. net / elementary-os / stable / ubuntu trusty main
deb-src http://ppa.launchpad.net/elementary-os/stable/ubuntu trusty main {{1 }}
Если вы не используете Elementary OS (но ванильный Ubuntu), просто убейте эти строки.
Они находятся в /etc/apt/sources.list
или /etc/apt/sources.list.d
.
У операторов case нет возможности выполнять оценку условий так же, как у if/then. Оператор case/switch может только сопоставлять шаблоны и выполнять определенные случаи, основанные на сопоставлении.
Я бы начал с использования [ ... ]
вот так.
[ -d /path/to/folder1 ] && echo cmd1
[ -d /path/to/folder2 ] && echo cmd2
[ -d /path/to/folder3 ] && echo cmd3
[ -d /path/to/folder4 ] && echo cmd4
[ -d /path/to/folder5 ] && echo cmd5
Если впоследствии вам понадобится выполнять более сложные команды, то, возможно, вы захотите перейти на формальные if/then.
if [ -d /path/to/folder1 ]; then
cmd1;
fi
Конечно, вы можете сделать это, используя сочетание globs / case.
Для отдельной папки вы сделаете следующее:
set X "$folder_name" "${folder_name}"*/; shift
case $2 in
"$1/" ) echo "The folder <<${folder_name}>> exists." ;;
* ) echo "The folder <<${folder_name}>> does not exist." ;;
esac