get_proxy_list() {
savefile=~/.PROXY_LIST
date=$(date +%d.%m.%Y)
url="http://site.com/proxy/list_${date}.txt"
...
}
make_dmy_date() {
date "+%d.%m.%Y"
}
make_proxy_url() {
echo "http://site.com/proxy/list_$(make_dmy_date).txt"
}
make_proxy_ofname() {
echo "~/.PROXY_LIST"
}
get_proxy_list() {
url=$1
savefile=$2
...
}
get_proxy_list `make_proxy_url` `make_proxy_ofname`
Кто может подсказать в какую сторону копать, какие журналы посмотреть?
и как дальше работать с $temp ?
echo "$temp" | что-то работает дальше
[guest@localhost ~]$ text=$(head -3 /etc/passwd)
[guest@localhost ~]$
[guest@localhost ~]$ echo "$text"
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
[guest@localhost ~]$
[guest@localhost ~]$ echo "$text" | grep oo
root:x:0:0:root:/root:/bin/bash
[guest@localhost ~]$
typedef int Point2D[2];
Point2D array[5];
Point2D *p, *q;
for (p = array, q = p + 5; p < q; p++) {
print_point(*p);
}
typedef struct {
Point2D *pt1;
Point2D *pt2;
} Line2D;
#include <stdio.h>
typedef int Point2D[2];
typedef struct {
Point2D *pt1;
Point2D *pt2;
} Line2D;
void print_point(Point2D p)
{
printf("(%d,%d)\n", p[0], p[1]);
}
void print_line(Line2D l)
{
printf("Line[\n");
print_point(*l.pt1);
print_point(*l.pt2);
printf("Line]\n");
}
int main(void)
{
Point2D array[5] = {{1, 2}, {3, 4}, {5, 6}};
Point2D *p, *q;
Line2D l;
for (p = array, q = p + 5; p < q; p++) {
print_point(*p);
}
l.pt1 = array;
l.pt2 = array + 2;
print_line(l);
return 0;
}
[guest@localhost c]$ .ansi t.c -o t
[guest@localhost c]$ ./t
(1,2)
(3,4)
(5,6)
(0,0)
(0,0)
Line[
(1,2)
(5,6)
Line]
[guest@localhost c]$
Казалось бы легко -
>>> import re
>>>
>>> s = 'Some random string , Round A 1 day - Trip'
>>>
>>> match = re.search(r'^(.+) , (\S+ \S+) (.+) - (.+)$', s)
>>> match.groups()
('Some random string', 'Round A', '1 day', 'Trip')
>>>
В один прекрасный момент заметил, что в проекте кое-что сломалось и уже давно
git blame -- file.txt
Т.е., какие файлы подверглись изменениям между этими двумя коммитами?
git log -p коммит_раньше..коммит_позже
git log -p коммит_раньше..коммит_позже -- file.txt
git log -p коммит_раньше~..коммит_позже
>>> def read_blocks(fname, block_size):
... with open(fname, 'rb') as fin:
... while True:
... data = fin.read(block_size)
... if data:
... yield data
... else:
... break
...
>>> out = read_blocks('/etc/passwd', 8)
>>>
>>> list(out)[:5]
[b'root:x:0', b':0:root:', b'/root:/b', b'in/bash\n', b'bin:x:1:']
>>>
>>> out = read_blocks('/etc/passwd', 10)
>>>
>>> list(out)[:5]
[b'root:x:0:0', b':root:/roo', b't:/bin/bas', b'h\nbin:x:1:', b'1:bin:/bin']
>>>
fflush(stdin);
scanf("%d%*c", &a);
В Python есть прекрасная функция dir(). Она показывает, какие методы/функции можно преминить к нашему объекту.