シェルスクリプト

スポンサーリンク
Linux

grepコマンドで終了ステータスコード(grep -p ~)を取得

grepコマンドで特定の文字を含む場合に、下記のようにgrepコマンドとwcコマンドを利用して検索結果の行数を取得してif文で分岐をよく使っています#!/bin/bashcnt=$(grep ERROR test.log | wc -l)i...
Linux

Cronで、MySQLのSQLクエリを定期的に実行する

Cronを使ってMySQLのSQLクエリを自動実行する方法MySQLのDBのメンテンナンスで定期的にupdate, delete分を実行したい場合があります。そのようなケースではMySQLのSQL文を実行するシェルスクリプトを作成してCro...
Linux

csvファイルの指定したカラムの空白文字を変換する

csvファイルで指定したカラム内の値がファイル名でWindowsだと良いのですが、Linuxだと良くないので半角の空白をアンスコ(_)やハイフン(-)に変換したくて、シェルスクリプトで頑張って色々とやってみましたがうまくいきませんでしたba...
Linux

「grep -E」で正規表現を使って検索する【grep】

grepは指定したファイルなどから、特定の文字列を検索できるコマンドです。grepで正規表現を使いたい場合は「egrep」を使えば良いのですが、「-E」のオプションを使うとgrepコマンドで、拡張正規表現 (Extended Regular...
Linux

「新しいBing」でプロセスを監視するシェルスクリプトを作成

前回はChatGPTでプロセス監視の記事(ChatGPTでプロセスを監視するシェルスクリプトを作成)を書きましたが、マイクロソフトの「新しいBing」も使用できるようになったので、こちらでもプロセス監視のシェルスクリプトを作って貰いました前...
Linux

ChatGPTでプロセスを監視するシェルスクリプトを作成

最近、話題になっている「ChatGPT」を利用して簡単なシェルスクリプトを作成してみました。「ChatGPT」は、OpenAIが開発した対話型AIチャットボットです。対話型で質問をすればAIが回答してくれます。試しに下記の質問をしました。【...
Linux

シェルスクリプトで「integer expression expected」のエラー

昔作ったシェルスクリプトで久しぶりに実行してみたら、下記のように「integer expression expected」とエラーが上がって処理ができていませんでしたsh test.sh: line 6: [: hoge: integer ...
Linux

除外リストにある文字を含む行を削除する方法「シェルスクリプト」

アカウント・ディレクトリ等の一覧のをファイルが有り、そのファイル内で特定の文字を含む行を削除したい場合は、「sed」コマンドを利用すればできます。その削除したい文字列を除外リストのようなファイルにある場合は、while read line ...
Linux

sedコマンドでHTMLタグの中身を取得する

HTMLソースで以下のようなタグの場合、<h2>~</h2>に囲まれた「TEST」のみを取得したい場合ですが、sedコマンドを利用するとタグで囲まれた中身を取得できます<h2>test</h2>使用するsedコマンドは、「sed -e 's...
Linux

行頭にゼロに入った数値の文字列で0を解除する【シェルスクリプト】

シェルスクリプトで0で埋め込まれた数字が入っている文字列で「0」を取り除く0で埋められた「001」、「0010」等の文字列になっている数字で、先頭からある「0」を外したい場合があります。sedコマンド「s/0*\(*$\)/\1/g」を利用...
Linux

シェルスクリプトの if文で複数の条件を指定する

if文で複数の条件を指定するシェルスクリプトでif文でAND条件やOR条件を複数指定したい場合ですが、以下のようにすればOKですif文でAND条件の場合AND条件では「条件1 -a 条件2」と条件を「-a」を付与して続ける方法と、 && と...
Linux

date コマンドで前月を取得する

dateコマンドで前月の日付を取得するには「1 month ago」のオプションを付けると一ヶ月前の値を取得ることが出来ます。$ date +'%Y-%m-%d'2020-11-04$ date -d '1 month ago' +'%Y-...
Linux

SSL証明書の有効期限をメールで通知するスクリプト

無料のSSL証明書の「Let’s Encrypt」を利用しています。有償のSSL証明書と比べると有効期限が短いので更新を忘れそうなので、SSL証明書の有効期限をチェックしてその期限をメールするスクリプトを作成しましたcertbotを利用して...
Linux

lsコマンドで、UNIXTIME(エポック秒)を取得する

ファイルのタイムスタンプを比較してから〇〇分経過していない場合は、Aの処理するようなシェルスクリプトを作る必要になり、シェルスクリプトで時間計算する場合はUnixTimeに変換する必要があるので、lsコマンドでタイムスタンプをUnixTim...
Linux

シェルスクリプトの変数名を数字で初めていけない

他のプロブラムでもそうですが、変数名に数字で始めるとシェルスクリプトではエラーになります#!/bin/bash1str="TEST"echo "$1str"$sh test.shtest.sh: 行 3: 1str=: コマンドが見つかりま...
スポンサーリンク