Код: Выделить всё
[guest@station ~]$ echo -e "one\ntwo" | sed 's/one$/ /'
two
[guest@station ~]$
не, видишь там пробел и перевод строки, а надо чтобы только " two" осталось
Модераторы: /dev/random, Модераторы разделов
Код: Выделить всё
[guest@station ~]$ echo -e "one\ntwo" | sed 's/one$/ /'
two
[guest@station ~]$
Код: Выделить всё
/key [7\.]/ {#семёрка или точка, ничего не выводим, а только сохраняем в буфере
s/key ([7\.])/\1/
H
b
}
x
/^$/ {#буфер пуст, вывод строки
x
p
b
}
#буфер не пуст, там 7 и .
/(7\n\.\n){3}7$/ {
r ip.txt
s/.*//
x
p
b
}
s/([7\.])/key \1/g
p
s/.*//
x
p
(Таблица) писал(а):Artist - Album
Track1
Track2
...
TrackN
man date
странно... разве не ясно? надо код писать. Я же написал какие команды, что не понятного? Могу конечно код написать, но зачем мне его писать? Какой в этом смысл? Вас это ничему не научит, мне это ничего полезного для меня не даст, код в данном случае будет примитивным, и там вроде ничего интересного не вставить. в общем-то одна команда - s/что менять/на что менять/ даже и обсуждать тут нечего, примеры есть в info sed и info bash - изучайте. Если надо, могу выслать эти файлы(хотя они вроде в любой ОС должны быть). Не очень понятна сама постановка вопроса - зачем делать замену cal? Кстати, ИМХО грамотное решение: юзать вместо cal саму cal. К тому-же, про эту cal я от вас узнал, а не узнал-бы, жил бы так-же счастливо, лично мне она совсем не нужна, дату я и и так узнаю.
вы знаете, мне тоже захотелось
drb /home/ftp/pub/music/mp3/televizor/1985_shevstvie_ryd$ mp3info 01.mp3 |iconv -f cp1251 -t utf-8
File: 01.mp3
Title: Люди в ожидании Track: 1
Artist: Телевизор
Album: Шествие рыб Year: 1985
Comment: Genre: Rock [17]
у вас их нет?
Shell
$ date "+%d
07
Код: Выделить всё
m=`date "+%m"`
d=`date "+%d"`
Код: Выделить всё
echo -e "норма\033[7mинверсия\033[0m"
ведь ссылка совершенно про другое.pcodr писал(а): ↑23.04.2009 05:14Folderx
Код: Выделить всё
echo -e "one\ntwo" | sed ':a;N;$!ba;s/one\n//g'
Нашел тут
Folderx писал(а): ↑22.04.2009 22:38Код: Выделить всё
[guest@station ~]$ echo -e "one\ntwo" | sed 's/one$/ /' two [guest@station ~]$
не, видишь там пробел и перевод строки, а надо чтобы только " two" осталось
Shell
$ echo -e "one\ntwo" | sed '/one/d'
two
$
Код: Выделить всё
#!/bin/bash
#cheking date in sms and put them in date folders
#if no date in file - put them in today sending
IN="/var/spool/sms/in"
OUT="/var/spool/sms/bydate"
NODATE="/var/spool/sms/outgoing/"
TODAY=$(date +%F)
INFILES=$(ls $IN)
echo ==========================
date
echo in IN files: $INFILES
if [ "$INFILES" ]
then
echo goin to parse files in IN
cd $IN
for i in $INFILES; do
senddate=$(grep Date $i | awk '{ print $2 }')
echo for $i send date is $senddate
if [ [ "$senddate" = "$TODAY" ] -o [ -z "$senddate" ] ]
then
mv $i $NODATE
echo date is today, or no date tag. moved to outgoing
fi
# if [ '$senddate' = '$TODAY' ]
# then
# mv $i $NODATE
# echo send date is today!
# continue
# fi
# if [ -z '$senddate' ]
# then
# mv $i $NODATE
# echo no send date. wtf?
# continue
# fi
mkdir -p $OUT/$senddate
mv $i $OUT/$senddate
done
else
echo no files. nothing to do
fi
как (слава богу) в нём указано, это вольный перевод http://wooledge.org:8000/BashPitfalls . не знаю, не совершил ли переводчик ошибок, но вот то, что перевод не полон — это точно.
sash-kan писал(а): ↑18.05.2009 20:08как (слава богу) в нём указано, это вольный перевод http://wooledge.org:8000/BashPitfalls
Код: Выделить всё
\s+
Код: Выделить всё
sed -r 's/^\s*\/dev\/cdrom\s+\/mnt\/cdrom\s+$/\#&/' fstab
Код: Выделить всё
[:space:]+