l "Cybozu" == "Cybozu"
l "Cybozu" in "Cybozu, Inc."
Slide 4
Slide 4 text
s = 'If the condition is true, then do the indented statements.'
if s != 'This is a pen':
print('s is not "This is a pen")
if 'cond' in s:
print('s contains "cond"')
if s.startswith('If '):
print('s starts with "If ")
Slide 5
Slide 5 text
ls /usr/bin/vi*
l * G
l ? G
l [abc] G
:
) )( 1 .1 1 //
E cE e E
I gM _
/ # / 3 . / / / 3
g I Mad
/ # / 3 . / .
T
/ # / 3 . /
b M
/ # / 3 . : / : 3
Slide 24
Slide 24 text
$ ls /bin | grep -E 'le?s'
l | %
)"!+%
)"(+$&
l -E '#*
grep
re regular expression
re
Slide 25
Slide 25 text
9/. cl r c
l pb r oa gi h
sed "/^user/ s/[tT]suruda/suzuki/"
l user c tsuruda suzuki m
sed -e "s/^#?¥s*PermitEmptyPasswords.*/PermitEmptyPasswords yes/" /etc/ssh/sshd_config
l /etc/ssh/sshd_config PermitEmptyPasswords c PermitEmptyPasswords yes
d n 9/. e
1:: 9 56: 1 25/. 1 :/5 360 64 /5:8
Slide 26
Slide 26 text
7 8 . 5 I
l 55 / 7 8 . 5 7
C
import re
re.compile(r'(¥w|[_-]){1,64}@').match("_" * 25)
:
Slide 27
Slide 27 text
o t M y V
P PMe ( )
l P P M h n M
n n
M
{1,64} : r
(¥w|[_-]){1,64}@ "
2
2
l " 2
_ 2
l (¥w|-){1,64}@
1 R
l
l 51_ E
Slide 34
Slide 34 text
(".%/&.% -#0
1
$
)'
,*!+
Slide 35
Slide 35 text
jq : *0&-0JSON'!72$.
JSON25/8:(.341
?@
) %
96
Slide 36
Slide 36 text
:
l / . .
l / . . .
l / . . .
Slide 37
Slide 37 text
l J
Slide 38
Slide 38 text
/etc/network/interfaces
IP,-(#
)
import re
ip_addr_pat = re.compile(r'!+$')
with open(…) as f:
for line in f:
m = ip_addr_pat.search(line)
if m is None:
continue
print(…)
m.group(0)
*+,-
%&"'
Slide 39
Slide 39 text
/usr/share/dict/words 3/#/,&-$
*/#(/
# 0
2
$ grep -iE "%.
'" /usr/share/dict/words
aba
aga
aha
...
l !1")
l +/# ^ $
Slide 40
Slide 40 text
""-- "
!$
l ": tyos
l : 20182030
l : 020
#
l ty-2018-15
l os-2019-0