Re: Нужна помощь с sed

2012-02-28 Нитка Alex Emergy

или может так надо?

alexemergy@stub:~$ cat test|grep -Eo '[0-9]{4}-[0-9]{2}-[0-9]{2}'
2012-02-07
2012-02-07
2012-02-07
2012-02-07
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28

Wed Feb 29 00:15:29 2012, Alex Emergy писал:
Может я что-то не понял, но можно тогда пример, без скрипта, что есть 
и что должно быть на выходе?


alexemergy@stub:~$ cat test

$ ls -1 /home/motion/CamRecords/ipcam01|head
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07_12-25-26.avi
01-20120207122620-03.jpg
02-2012-02-07_12-29-38.avi
02-20120207122939-03.jpg
03-2012-02-07_12-31-13.avi
03-20120207123115-00.jpg
04-2012-02-07_12-32-30.avi
04-20120207123232-00.jpg

$ ls -1 /home/motion/CamRecords/ipcam01|tail
2012-02-28_19-05-55-event-24.avi
2012-02-28_19-06-22-03-event-24.jpg
2012-02-28_19-09-03-event-25.avi
2012-02-28_19-09-16-02-event-25.jpg
2012-02-28_19-12-26-event-26.avi
2012-02-28_19-13-32-00-event-26.jpg
2012-02-28_19-15-48-event-27.avi
2012-02-28_19-15-50-00-event-27.jpg
2012-02-28_19-18-45-event-28.avi
Thumbs.db
alexemergy@stub:~$ cat test|perl -nE 'say $1 if/(\d{4}-\d{2}-\d{2})/'
2012-02-07
2012-02-07
2012-02-07
2012-02-07
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28

Tue Feb 28 20:07:02 2012, Тарас Перебейносов писал:
Вставил костылик в виде grep. В конце выводится пустая строка. Не 
знаю откуда она берется, но как это нее избавиться?



folder1="/home/motion/CamRecords/ipcam01"
folder2="/home/motion/CamRecords/ipcam02"

cd $folder1
ls -1 | while read file
do
# 2012-02-28_18-08-40-04-event-04.jpg
# 2012-02-28_18-09-45-event-05.avi
folderName=$(echo $file | grep -Pe '^[0-9]{4}-[0-9]{2}-[0-9]{2}' | 
sed -re 's/^([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/')

if [ "$folderName_old" != "$folderName" ]
then
echo $folderName
fi
folderName_old=$folderName
done


28 февраля 2012 г. 19:27 пользователь Тарас Перебейносов 
mailto:taras.perebeyno...@gmail.com>> 
написал:


Доброго времени суток!

Помогите, пожалуйста, разобраться с регулярными выражениями в sed.
Я пытаюсь написать скрипт, который будет ежедневно складывать в
папочки по датам файлы:

$ *ls -1 /home/motion/CamRecords/ipcam01|head*
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07_12-25-26.avi
01-20120207122620-03.jpg
02-2012-02-07_12-29-38.avi
02-20120207122939-03.jpg
03-2012-02-07_12-31-13.avi
03-20120207123115-00.jpg
04-2012-02-07_12-32-30.avi
04-20120207123232-00.jpg

$ *ls -1 /home/motion/CamRecords/ipcam01|tail*
2012-02-28_19-05-55-event-24.avi
2012-02-28_19-06-22-03-event-24.jpg
2012-02-28_19-09-03-event-25.avi
2012-02-28_19-09-16-02-event-25.jpg
2012-02-28_19-12-26-event-26.avi
2012-02-28_19-13-32-00-event-26.jpg
2012-02-28_19-15-48-event-27.avi
2012-02-28_19-15-50-00-event-27.jpg
2012-02-28_19-18-45-event-28.avi
Thumbs.db

Вот набросок разбора имен:

#!/bin/bash

folder1="/home/motion/CamRecords/ipcam01"
folder2="/home/motion/CamRecords/ipcam02"

cd $folder1
ls -1 | while read file
do
# 2012-02-28_18-08-40-04-event-04.jpg
# 2012-02-28_18-09-45-event-05.avi
folderName=$(echo $file|*sed -re
's/([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/'*)
if [ "$folderName_old" != "$folderName" ]
then
echo $folderName
fi
folderName_old=$folderName
done

Я ожидал, что скрипт выведет мне имена для папок, которые нужно
создать. Но выводится также и мусор (то, что не подходит под
шаблон ).

$ *./folderOrder.sh |head*
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07
01-20120207122620-03.jpg
02-2012-02-07
02-20120207122939-03.jpg
03-2012-02-07
03-20120207123115-00.jpg
04-2012-02-07
04-20120207123232-00.jpg

$ *./folderOrder.sh |tail*
2012-02-20
2012-02-21
2012-02-22
2012-02-23
2012-02-24
2012-02-25
2012-02-26
2012-02-27
2012-02-28
Thumbs.db

Как убрать из вывода строки, которые не совпадают с шаблоном
 ?








--
Alex Emergy

--
ubuntu-ru mailing list
ubuntu-ru@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru


Re: Нужна помощь с sed

2012-02-28 Нитка Alex Emergy
Может я что-то не понял, но можно тогда пример, без скрипта, что есть и 
что должно быть на выходе?


alexemergy@stub:~$ cat test

$ ls -1 /home/motion/CamRecords/ipcam01|head
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07_12-25-26.avi
01-20120207122620-03.jpg
02-2012-02-07_12-29-38.avi
02-20120207122939-03.jpg
03-2012-02-07_12-31-13.avi
03-20120207123115-00.jpg
04-2012-02-07_12-32-30.avi
04-20120207123232-00.jpg

$ ls -1 /home/motion/CamRecords/ipcam01|tail
2012-02-28_19-05-55-event-24.avi
2012-02-28_19-06-22-03-event-24.jpg
2012-02-28_19-09-03-event-25.avi
2012-02-28_19-09-16-02-event-25.jpg
2012-02-28_19-12-26-event-26.avi
2012-02-28_19-13-32-00-event-26.jpg
2012-02-28_19-15-48-event-27.avi
2012-02-28_19-15-50-00-event-27.jpg
2012-02-28_19-18-45-event-28.avi
Thumbs.db
alexemergy@stub:~$ cat test|perl -nE 'say $1 if/(\d{4}-\d{2}-\d{2})/'
2012-02-07
2012-02-07
2012-02-07
2012-02-07
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28
2012-02-28

Tue Feb 28 20:07:02 2012, Тарас Перебейносов писал:
Вставил костылик в виде grep. В конце выводится пустая строка. Не знаю 
откуда она берется, но как это нее избавиться?



folder1="/home/motion/CamRecords/ipcam01"
folder2="/home/motion/CamRecords/ipcam02"

cd $folder1
ls -1 | while read file
do
# 2012-02-28_18-08-40-04-event-04.jpg
# 2012-02-28_18-09-45-event-05.avi
folderName=$(echo $file |  grep -Pe 
'^[0-9]{4}-[0-9]{2}-[0-9]{2}' | sed -re 
's/^([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/')

if [ "$folderName_old" != "$folderName" ]
then
echo $folderName
fi
folderName_old=$folderName
done


28 февраля 2012 г. 19:27 пользователь Тарас Перебейносов 
mailto:taras.perebeyno...@gmail.com>> 
написал:


Доброго времени суток!

Помогите, пожалуйста, разобраться с регулярными выражениями в sed.
Я пытаюсь написать скрипт, который будет ежедневно складывать в
папочки по датам файлы:

$ *ls -1 /home/motion/CamRecords/ipcam01|head*
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07_12-25-26.avi
01-20120207122620-03.jpg
02-2012-02-07_12-29-38.avi
02-20120207122939-03.jpg
03-2012-02-07_12-31-13.avi
03-20120207123115-00.jpg
04-2012-02-07_12-32-30.avi
04-20120207123232-00.jpg

$ *ls -1 /home/motion/CamRecords/ipcam01|tail*
2012-02-28_19-05-55-event-24.avi
2012-02-28_19-06-22-03-event-24.jpg
2012-02-28_19-09-03-event-25.avi
2012-02-28_19-09-16-02-event-25.jpg
2012-02-28_19-12-26-event-26.avi
2012-02-28_19-13-32-00-event-26.jpg
2012-02-28_19-15-48-event-27.avi
2012-02-28_19-15-50-00-event-27.jpg
2012-02-28_19-18-45-event-28.avi
Thumbs.db

Вот набросок разбора имен:

#!/bin/bash

folder1="/home/motion/CamRecords/ipcam01"
folder2="/home/motion/CamRecords/ipcam02"

cd $folder1
ls -1 | while read file
do
# 2012-02-28_18-08-40-04-event-04.jpg
# 2012-02-28_18-09-45-event-05.avi
folderName=$(echo $file|*sed -re
's/([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/'*)
if [ "$folderName_old" != "$folderName" ]
then
echo $folderName
fi
folderName_old=$folderName
done

Я ожидал, что скрипт выведет мне имена для папок, которые нужно
создать. Но выводится также и мусор (то, что не подходит под
шаблон ).

$ *./folderOrder.sh |head*
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07
01-20120207122620-03.jpg
02-2012-02-07
02-20120207122939-03.jpg
03-2012-02-07
03-20120207123115-00.jpg
04-2012-02-07
04-20120207123232-00.jpg

$ *./folderOrder.sh |tail*
2012-02-20
2012-02-21
2012-02-22
2012-02-23
2012-02-24
2012-02-25
2012-02-26
2012-02-27
2012-02-28
Thumbs.db

Как убрать из вывода строки, которые не совпадают с шаблоном
 ?






--
Alex Emergy

--
ubuntu-ru mailing list
ubuntu-ru@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru


Re: Возможность загрузки LiveCD без HDD

2012-02-28 Нитка Serge Matveenko
2012/2/28 Стас :
> Всех приветствую. Реально ли загрузить Ubuntu с живой флешки, при
> отсутствии HDD в компе? Комп- ноутбук Acer Aspire 5920G. Хард осыпался
> и выброшен, а я хочу купить этот ноут как донора для другого компа. И
> надо загрузиться и проверить работоспособность.
> Спасибо.

Реально. Должно просто загрузиться.


-- 
Serge Matveenko
se...@matveenko.ru
http://www.ohloh.net/accounts/lig
http://ru.linkedin.com/in/sergematveenko
-- 
ubuntu-ru mailing list
ubuntu-ru@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru


Возможность загрузки LiveCD без HDD

2012-02-28 Нитка Стас
Всех приветствую. Реально ли загрузить Ubuntu с живой флешки, при
отсутствии HDD в компе? Комп- ноутбук Acer Aspire 5920G. Хард осыпался
и выброшен, а я хочу купить этот ноут как донора для другого компа. И
надо загрузиться и проверить работоспособность.
Спасибо.
-- 
ubuntu-ru mailing list
ubuntu-ru@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru


Re: Нужна помощь с sed

2012-02-28 Нитка Тарас Перебейносов
Вставил костылик в виде grep. В конце выводится пустая строка. Не знаю
откуда она берется, но как это нее избавиться?


folder1="/home/motion/CamRecords/ipcam01"
folder2="/home/motion/CamRecords/ipcam02"

cd $folder1
ls -1 | while read file
do
# 2012-02-28_18-08-40-04-event-04.jpg
# 2012-02-28_18-09-45-event-05.avi
folderName=$(echo $file |  grep -Pe '^[0-9]{4}-[0-9]{2}-[0-9]{2}' |
sed -re 's/^([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/')
if [ "$folderName_old" != "$folderName" ]
then
echo $folderName
fi
folderName_old=$folderName
done


28 февраля 2012 г. 19:27 пользователь Тарас Перебейносов <
taras.perebeyno...@gmail.com> написал:

> Доброго времени суток!
>
> Помогите, пожалуйста, разобраться с регулярными выражениями в sed.
> Я пытаюсь написать скрипт, который будет ежедневно складывать в папочки по
> датам файлы:
>
> $ *ls -1 /home/motion/CamRecords/ipcam01|head*
> 01-20120207104003.avi
> 01-20120207104004-04.jpg
> 01-2012-02-07_12-25-26.avi
> 01-20120207122620-03.jpg
> 02-2012-02-07_12-29-38.avi
> 02-20120207122939-03.jpg
> 03-2012-02-07_12-31-13.avi
> 03-20120207123115-00.jpg
> 04-2012-02-07_12-32-30.avi
> 04-20120207123232-00.jpg
>
> $ *ls -1 /home/motion/CamRecords/ipcam01|tail*
> 2012-02-28_19-05-55-event-24.avi
> 2012-02-28_19-06-22-03-event-24.jpg
> 2012-02-28_19-09-03-event-25.avi
> 2012-02-28_19-09-16-02-event-25.jpg
> 2012-02-28_19-12-26-event-26.avi
> 2012-02-28_19-13-32-00-event-26.jpg
> 2012-02-28_19-15-48-event-27.avi
> 2012-02-28_19-15-50-00-event-27.jpg
> 2012-02-28_19-18-45-event-28.avi
> Thumbs.db
>
> Вот набросок разбора имен:
>
> #!/bin/bash
>
> folder1="/home/motion/CamRecords/ipcam01"
> folder2="/home/motion/CamRecords/ipcam02"
>
> cd $folder1
> ls -1 | while read file
> do
> # 2012-02-28_18-08-40-04-event-04.jpg
> # 2012-02-28_18-09-45-event-05.avi
> folderName=$(echo $file|*sed -re
> 's/([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/'*)
> if [ "$folderName_old" != "$folderName" ]
> then
> echo $folderName
> fi
> folderName_old=$folderName
> done
>
> Я ожидал, что скрипт выведет мне имена для папок, которые нужно создать.
> Но выводится также и мусор (то, что не подходит под шаблон ).
>
> $ *./folderOrder.sh |head*
> 01-20120207104003.avi
> 01-20120207104004-04.jpg
> 01-2012-02-07
> 01-20120207122620-03.jpg
> 02-2012-02-07
> 02-20120207122939-03.jpg
> 03-2012-02-07
> 03-20120207123115-00.jpg
> 04-2012-02-07
> 04-20120207123232-00.jpg
>
> $ *./folderOrder.sh |tail*
> 2012-02-20
> 2012-02-21
> 2012-02-22
> 2012-02-23
> 2012-02-24
> 2012-02-25
> 2012-02-26
> 2012-02-27
> 2012-02-28
> Thumbs.db
>
> Как убрать из вывода строки, которые не совпадают с шаблоном  ?
>
-- 
ubuntu-ru mailing list
ubuntu-ru@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru


Нужна помощь с sed

2012-02-28 Нитка Тарас Перебейносов
Доброго времени суток!

Помогите, пожалуйста, разобраться с регулярными выражениями в sed.
Я пытаюсь написать скрипт, который будет ежедневно складывать в папочки по
датам файлы:

$ *ls -1 /home/motion/CamRecords/ipcam01|head*
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07_12-25-26.avi
01-20120207122620-03.jpg
02-2012-02-07_12-29-38.avi
02-20120207122939-03.jpg
03-2012-02-07_12-31-13.avi
03-20120207123115-00.jpg
04-2012-02-07_12-32-30.avi
04-20120207123232-00.jpg

$ *ls -1 /home/motion/CamRecords/ipcam01|tail*
2012-02-28_19-05-55-event-24.avi
2012-02-28_19-06-22-03-event-24.jpg
2012-02-28_19-09-03-event-25.avi
2012-02-28_19-09-16-02-event-25.jpg
2012-02-28_19-12-26-event-26.avi
2012-02-28_19-13-32-00-event-26.jpg
2012-02-28_19-15-48-event-27.avi
2012-02-28_19-15-50-00-event-27.jpg
2012-02-28_19-18-45-event-28.avi
Thumbs.db

Вот набросок разбора имен:

#!/bin/bash

folder1="/home/motion/CamRecords/ipcam01"
folder2="/home/motion/CamRecords/ipcam02"

cd $folder1
ls -1 | while read file
do
# 2012-02-28_18-08-40-04-event-04.jpg
# 2012-02-28_18-09-45-event-05.avi
folderName=$(echo $file|*sed -re
's/([0-9]{4}-[0-9]{2}-[0-9]{2})_.+/\1/'*)
if [ "$folderName_old" != "$folderName" ]
then
echo $folderName
fi
folderName_old=$folderName
done

Я ожидал, что скрипт выведет мне имена для папок, которые нужно создать. Но
выводится также и мусор (то, что не подходит под шаблон ).

$ *./folderOrder.sh |head*
01-20120207104003.avi
01-20120207104004-04.jpg
01-2012-02-07
01-20120207122620-03.jpg
02-2012-02-07
02-20120207122939-03.jpg
03-2012-02-07
03-20120207123115-00.jpg
04-2012-02-07
04-20120207123232-00.jpg

$ *./folderOrder.sh |tail*
2012-02-20
2012-02-21
2012-02-22
2012-02-23
2012-02-24
2012-02-25
2012-02-26
2012-02-27
2012-02-28
Thumbs.db

Как убрать из вывода строки, которые не совпадают с шаблоном  ?
-- 
ubuntu-ru mailing list
ubuntu-ru@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru