Написал скрипт, суть задания его такова: «Командный файл, который из каталога, указанного в командной строке первым параметром (если такого каталога нет – выдача диагностического сообщения) выбирает имена файлов, начинающиеся либо с латинской буквы, либо с другого символа в зависимости от ключа, указанного вторым параметром в командной строке (если второго параметра нет – выдача диагностического сообщения), сортирует их по времени создания и выдает их пронумерованный список в файл „my_sort“.»
Вот единственное, что не могу понять, как из этого задания влепить - это сортировка по времени... Может, кто нибудь знает, как сортировку по времени правильно реализовать?
#!/bin/csh
if ( ! -d $1 ) then
echo 'Dir not exist'
exit;
endif
if ( $2 == '' ) then
echo 'Second argument is empty'
exit;
endif
set i = 1
set files = `ls -a --time=ctime $1`
foreach f ($files)
switch ($f)
case [A-z]*:
if ( $2 == letter ) then
echo "$i " $f >> tmp
@ i = $i + 1
endif
breaksw
default:
if ( $2 == symbol ) then
echo "$i " $f >> tmp
@ i = $i + 1
endif
breaksw
endsw
end
cat tmp>my_sort
rm -f tmp