skillup

技術ブログ

プログラミング全般

シェルスクリプト ファイル読み込み・switchなど

投稿日:2015年8月2日 更新日:

以前のエントリーに引き続き、シェルスクリプトでログを解析する処理があってそこで覚えたことなどをまとめておきます。

ファイル読み込み

ファイルの内容を一気に読み込むならいろいろなコマンドがありますが一行ずつ読み込んでその内容判断していく・・みたいな処理が以外に探すのが時間がかかりました。

下記のコマンドで一行ずつ読み込みます。

リンク

シェルスクリプトでファイルを1行ずつ読み込む

switch文

通常のプログラミング言語より柔軟性が若干あります。

基本パターン

条件にorを使用

正規表現を使用

こちらに応用技が載っています。

UNIX & Linux コマンド・シェルスクリプト リファレンス case 文の使用方法

タブ時の扱い

プログラミング言語だと”\t”と記述することが多いですが、シェルスクリプトの場合、シングルクオートでくくるか、echo時に-nのオプションが必要です。

逆にダブルクオートだとそのまま文字として出力されます。

リンク

bashで変数にタブコードを入れる

空文字判定

これまたちょっと特殊なパターンです。

リンク

シェルスクリプトで空文字列かどうか調べる。

変数から変数への代入

再代入の場合には代入される側は$がいらないようです。

リンク

シェルスクリプト(sh/bash/zsh)で変数から変数へ代入する方法について

まだ全然整理できていないのでまとめる必要がいろいろありそうですね。

ログをみる処理など、応用範囲は広いと思うのでここで勉強しておきたいです。

-プログラミング全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

マイクロサービスについて

マイクロサービスについて勉強したので少しメモを。 参考文献 Software Design 「2020年1月」 Contents1 マイクロサービスとは?1.1 具体例1.1.1 フロントエンドとバッ …

no image

ミスを少なくする工夫について

プログラマであればだれもが「いかにバグを少なくするか」に腐心すると思います。 ところが、人間がある以上、バグ(ミス)は絶対にゼロにはなりません。バグ云々以前に、「人間はもともとミスをする生き物だ」とい …

no image

メモリに関して 静的領域、スタック、ヒープなど

実務でメモリの調査をしましたが、肝心のメモリについてほとんどわかっていないのでメモ。 メモリの領域を大きく分けると静的、スタック、ヒープに別れる。 Contents1 静的2 スタック3 ヒープ4 そ …

no image

クラスメソッドとインスタンスメソッド

以前staticメソッドを定義したときに、記法がインスタンスメソッドの呼び方でも呼べてしまうことがあったので、これを機にインスタンス・クラス×変数・メソッドちょっと調べてみました。 言葉で書くよりコー …

no image

フレームワーク作成時の注意ポイント

以前も多分書いていますが、フレームワーク作成時のポイントなどを列挙。 次元が違うものも多々含まれているかも。 ルーティング機能 基本設定情報の読み込み キャッシュ機能 データベース Form情報の管理 …