Yanor.net/
Wiki
Blog
GitHub
Sandbox
開始行:
* ワンライナー [#g00a36a1]
** -e 基本 [#y84fe922]
*** 構造 [#zac8c0a5]
(記述1)...
(記述2)...
*** 例 [#icd4135f]
$ perl -e 'print "foo"'
foo
** -n 1行ずつ読み込む [#paf7cbbb]
*** 構造 [#ce77dc71]
while (<>) {
(記述1)...
(記述2)...
}
*** 例 [#o4c159f0]
ifconfig eth0 | perl -ne 'print "DEBUG:$1" if /inet addr...
DEBUG: 192.168.0.1
** -p 1行ずつ読み込み、print()する [#za9440ad]
*** 構造 [#de612a03]
while (<>) {
(記述1)...
(記述2)...
print $_;
}
*** 例 [#q7fdafe8]
cat /etc/passwd | perl -pe 'print $num++ . ": "'
0: root:x:0:0:root:/root:/bin/bash
1: bin:x:1:1:bin:/bin:/sbin/nologin
2: daemon:x:2:2:daemon:/sbin:/sbin/nologin
** -i ファイルを上書きする [#l105fdcc]
$ perl -i -p -e 's/a/A/g' sample.txt
sample.txtは内容が修正され、上書きされる。
以下のようにすると、バックアップファイル(sample.txt.bak...
$ perl -i.bak -p -e 's/a/A/g' sample.txt
** BEGIN{} END{} 前後に処理を加える [#ab31794a]
$perl -p -e 'BEGIN{ print "/etc/passwd:\n";} print ++$i,...
/etc/passwd:
1: root:x:0:0:root:/root:/bin/bash
2: daemon:x:1:1:daemon:/usr/sbin:/bin/sh
3: bin:x:2:2:bin:/bin:/bin/sh
done.
終了行:
* ワンライナー [#g00a36a1]
** -e 基本 [#y84fe922]
*** 構造 [#zac8c0a5]
(記述1)...
(記述2)...
*** 例 [#icd4135f]
$ perl -e 'print "foo"'
foo
** -n 1行ずつ読み込む [#paf7cbbb]
*** 構造 [#ce77dc71]
while (<>) {
(記述1)...
(記述2)...
}
*** 例 [#o4c159f0]
ifconfig eth0 | perl -ne 'print "DEBUG:$1" if /inet addr...
DEBUG: 192.168.0.1
** -p 1行ずつ読み込み、print()する [#za9440ad]
*** 構造 [#de612a03]
while (<>) {
(記述1)...
(記述2)...
print $_;
}
*** 例 [#q7fdafe8]
cat /etc/passwd | perl -pe 'print $num++ . ": "'
0: root:x:0:0:root:/root:/bin/bash
1: bin:x:1:1:bin:/bin:/sbin/nologin
2: daemon:x:2:2:daemon:/sbin:/sbin/nologin
** -i ファイルを上書きする [#l105fdcc]
$ perl -i -p -e 's/a/A/g' sample.txt
sample.txtは内容が修正され、上書きされる。
以下のようにすると、バックアップファイル(sample.txt.bak...
$ perl -i.bak -p -e 's/a/A/g' sample.txt
** BEGIN{} END{} 前後に処理を加える [#ab31794a]
$perl -p -e 'BEGIN{ print "/etc/passwd:\n";} print ++$i,...
/etc/passwd:
1: root:x:0:0:root:/root:/bin/bash
2: daemon:x:1:1:daemon:/usr/sbin:/bin/sh
3: bin:x:2:2:bin:/bin:/bin/sh
done.
ページ名: