おれさまラボスマートフォン用の表示で見るおれさまラボ実際に手を動かして理解を深めるブログ。2015-10-04sedコマンドの使い方シェルスクリプトを書いてみる。sedコマンドとはsed(セド、セッド)コマンドは、文字列の置換や削除などのテキスト処理を行うコマンド。その名の通り実はエディタで、非対話型エディタに分類されます。指定されたファイルを読み込み、sedコマンドが置換や削除などのフィルタ処理を行い、その結果を標準出力する流れになります。標準出力を行うため、元のファイルは変更しません。<ファイル名>スクリプトはシングルクォーテーションマーク('スクリプト')で囲ってあげましょう。囲わないと以下のようなエラーを履く場合があります。dコマンドで行を削除するdコマンドは行を削除するスクリプトです。下の例ではbasho.txtの2行目を削除して出力しています。'2d'はスクリプトを意味します。正確には、'2'はアドレス(2行目)、'd'はコマンド(削除)を表しています。basho.txt古池や水の音また、sedコマンドは、パイプで渡すことが出来ます。水の音1~2行目を削除するにはカンマで区切ります。水の音'$'は最終行を意味します。'2,$d'と指定すれば、2行目から最終行までを削除するという意味になります。古池やpコマンドで行を表示するpコマンドは行を表示するスクリプトです。pコマンドをつけて実行すると、1行目が2回表示されてしまいます。水の音これは、sedコマンドの仕組み上仕方のないことなので、あまり気にする必要はありません。sedコマンドは、パターン空間と呼ばれる場所に一度内容をコピーしてからマッチするアドレス(1)に対してコマンド(p)を実行し、その後パターン空間の内容をすべて出力します。上記の例では1行目が2回あるように見えてしまうのです。dコマンドで同じ現象が起きなかったのは、dコマンドが削除するコマンドなので、最後にパターン空間をすべて削除した形になるからです。1行目が2回表示される結果を回避するには-nオプションを付けます。-nオプションはパターン空間の出力を抑制するオプションです。古池やsコマンドで置換するsは文字列を置換するコマンドです。以下のように記述します。フラグは省略可能です。<ファイル名>例えば以下のように記述します。「蛙」が「?」に置換されました。水の音sコマンドは1行目から探していき、その行で最初に見つかった該当文字列のみに置換処理を行います。そのため、下の例では2行目に「蛙」が残ってしまいます。見つかったすべての文字列を置換するにはgフラグを付けます。今度はきちんとすべての「蛙」が「?」に置換されています。置換後の文字列を指定しないことで、その文字列を削除することができます。水の音pフラグを使うことで、置換が発生した行を出力できます。例によってパターン空間が出力されるので、-nオプションを使うことで、置換が発生した行のみ出力します。スクリプトとして扱われます。全ての残りの引数は入力ファイル名として扱われます。入力ファイルが指定されていない場合は、標準入力から読み込みます。翻訳に関するバグは<translation-team-ja@lists.sourceforge.net>に報告してください。Gitをドットインストールで勉強してきました。Dockerをドットインストールで勉強し直してきました。...2016-11-18PaloaltoでAD情報を取得できているか確認する運用終了したスクリプトですが、備忘としてメモ。参加します!IPとかイーサネットのパケット形式図はなぜあのカタチなのか月別アーカイブはてなブログをはじめよう!naoto408さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。