Вот:
dates=($(for i in backups/*.tar.bz2;do #Glob eliminates need to list all files
date=${i/Complete Backup /} #Remove "Complete Backup "
date=${date%%.*} #Remove ".tar.bz2"
date=${date/ /,} #Substitue , for space
echo $date #Echo the date for sed
done|sed -e 's/\([0-9]\+\)-\([0-9]\+\)-\([0-9]\+\)$/\1:\2:\3/'|sort -r|xargs echo))
select date in ${dates[@]};do
echo "$date"
done
Еще одна вещь: если Вы используете это для a select
цикл, как Вы собираетесь сказать различные даты независимо, когда они разделены пробелом? Я подразумеваю, что Вы используете пространство для разделения даты со времени также, таким образом, это могло бы быть источником беспорядка.
Править
select
может сказать пару даты и времени от новой записи в целом.select
циклselect
цикл, чтобы избежать необходимости повторно анализировать даты каждого повторного выполнения цикла.Чтобы изменить версию питона, которая выполняется при наборе в командной строке python
, и только после этого определить псевдоним в файле инициализации оболочки (псевдоним для интерактивных оболочек). Это ~/.bashrc
для bash, ~/.zshrc
для zsh, ~/.cshrc
для csh, ~/.config/fish/config.fish
для рыбы. Используйте правильный путь к Python 3.3 для вашей установки.
alias python='/usr/local/bin/python3.3'
Если вы хотите, чтобы это работало для всех пользователей, вы можете поместить это в общесистемный файл; однако я не рекомендую это, так как это приводит к тому, что python
, набранный в командной строке, является другой версией, чем python
, выполненный из скрипта или любого другого места, что сбивает с толку.
В Debian wheezy, python
в пути поиска по умолчанию должен быть Python 2.7, потому что есть программы, которые зависят от него (некоторые пакеты поставляют скрипты Python 2, которые имеют #!/usr/bin/env python
в качестве своей shebang строки). Если вы хотите, вы можете изменить по умолчанию систему для Python 3 на Python 3.3 вместо 3.2, которая поставляется с Debian wheezy. Для этого создайте символическую ссылку в /usr/local/bin
(для этого вам нужно быть корневым). Если вы установили Python 3 непосредственно в /usr/local/bin
:
ln -s python3.3 /usr/local/bin/python3
Если вы установили его в другом месте:
ln -s /path/to/python3.3/bin/python3.3 /usr/local/bin/python3
Scripts that ship with Debian with the shebang #! /usr/bin/python3
будет продолжать использовать 3.2, но сценарии, которые используют #!/usr/bin/env python3
теперь будут использовать 3.3, и ввод python3
в командной строке будет вызывать 3.3.