タグ

シェルスクリプトに関するjay777のブックマーク (19)

  • UEC - usp engineers' community site - UEC - usp engineers' community

    UEC - UNIXを深く理解し、シェルプログラミングを極めるコミュニティサイト Info インフォメーション イベント情報 / ニュース・プレスリリース ユニケージについて ユニケージ開発手法とは / ユニケージエンジニアとは ユニケージ開発手法 技能検定 / 試験日程 ユニケージ開発手法 教育講座 / 開講日程 ユニケージ開発手法 教育講座レポート 出版物 シェルスクリプトマガジン / 注文 / 取扱書店 / 問合せ USP出版書籍 / 注文 / 取扱書店 / 問合せ Software Design / FreeBSD Expert FreeBSD Weekly Topics / 日経Linux 推薦図書 オススメの定番書 / より上級者を目指す UNIXビギナー向け教 / UNIXの文化を知る AWK/SEDを習得する / 手元に置きたい実用書 古典を楽しむ UECサイトについて

  • 「passwdコマンドをシェルスクリプトで使いたいのです。」(1) Linux Square - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

  • 私が他人のシェルスクリプトから学んだこと | Yakst

    私はシェルスクリプトの大ファンで、他人のスクリプトから面白い方法を学ぶのが大好きだ。最近、SSHサーバの2要素認証を簡単にするためのauthy-sshスクリプトに出会った。このスクリプト群を見まわしていて、みんなと共有したいたくさんのクールなことを見つけた。 出力に色付けする 出力文字列を、成功した時は緑に、失敗した時は赤に、警告は黄色に色づけしたいと思うことはたくさんあるだろう。 NORMAL=$(tput sgr0) GREEN=$(tput setaf 2; tput bold) YELLOW=$(tput setaf 3) RED=$(tput setaf 1) function red() { echo -e "$RED$*$NORMAL" } function green() { echo -e "$GREEN$*$NORMAL" } function yellow() { e

    私が他人のシェルスクリプトから学んだこと | Yakst
  • UNIXシェルスクリプトメモ(Hishidama's UNIX shell script Memo)

    -xを付けると実行内容を表示しながら実行する。[2008-11-29] bash -x スクリプトファイル -nを付けると、実行せずにファイル内の構文解析(エラーの有無のチェック)を行う。[2008-11-29] bash -n スクリプトファイル . スクリプトファイル 現在実行中のシェルと同じシェルを使ってスクリプトを実行する。 スクリプトの中で環境変数を設定した場合、現在のシェルの環境にも影響する (スクリプトの中で定義した環境変数が実行元でも有効になる)。 ファイルに実行権限(chmod +x)が付いている場合は、以下のようにして実行できる(相対パスで指定している)。 ./スクリプトファイル ファイルに実行権限(chmod +x)が付いており、かつ環境変数PATHにカレントディレクトリ「.」が含まれている場合は、以下のようにして実行できる。 スクリプトファイル シェルスクリプトの書

  • 業務でラクするためのUNIXテクニック集一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    業務でラクするためのUNIXテクニック集一覧
  • シェルスクリプトのデバッグは typeset または declare を使うと良いかも - よんちゅBlog

    はじめに つい最近知った便利なデバッグ方法 (長年シェルスクリプトを書いているのに知らなかった。これが常識だったら恥ずかしい…) シェルスクリプトのデバッグでは echo で変数の中身を見るという原始的な方法をよく使うかと思います。 いわゆる プリントデバッグ というやつですね。 もう少し詳しいデバッグが必要な場合は、 set -x と set +x でデバッグしたい部分を囲むという方法もあります。 今回は プリントデバッグ で使う echo の代わりに typeset or declare を使うと良いというお話です。 プリントデバッグは typeset or declare を使おう typeset or declare は変数宣言などでよく使うコマンドですが、変数の中身を見るのにも使えます。 echo と比べて何が良いのかというと、変数の中身はもちろん変数名や変数の型も表示してくれ、

    シェルスクリプトのデバッグは typeset または declare を使うと良いかも - よんちゅBlog
  • bashによるシェルスクリプトの小技(2) - shibainu55日記

    前回(bashによるシェルスクリプトの小技(1))に引き続き、シェルによって自動的に値が設定される特殊な変数について紹介する。特殊な変数を参照することにより、様々な情報を取得することができる(ただし、これらの変数には自分で任意の値を設定することはできない)。 さて、まずは特殊変数を一覧でまとめてみる。お馴染みのものが多いが、最後の2つ(特に最後のPIPESTATUS)についてはきっと今まで知らなかった人もいるんじゃないだろうか。シェルの中でパイプすると途中のコマンドのリターンコード、拾えないとか思っていませんか?今回のポイントとしては、「1. PIPESTATUS変数について」と「2. 特殊変数 $@と$*の違いについて」の2点を主に説明する。 特殊変数一覧表 変数名 自動的に設定される値 $? 直前に実行されたコマンドの終了ステータスが設定される変数。正常終了の場合は「0」、異常終了の場

    bashによるシェルスクリプトの小技(2) - shibainu55日記
  • UNIX今日の技 - UNIX今日の技/シェル

    多くのシェルはデフォルトで Emacs キーバインドになっています (moon に program で入ったときの tcsh でもそうです)。 覚えておくと便利そうなのは、以下でしょうか。 [C-p] コマンドヒストリを遡る [C-n] コマンドヒストリを下る [C-a] コマンドライン先頭へ移動 [C-e] コマンドライン末尾へ移動 [C-u] コマンドライン全消去(消去した文字列はキルバッファに入ります) [C-k] カーソルより後の文字列を削除(消去した文字列はキルバッファに入ります) [C-y] キルバッファに入っている文字列をヤンク(ペースト)する [C-l] 画面をクリアする 私の場合、長いファイル名の一部を変更する時など [C-k][C-y][C-y] をよく使います。 キルバッファの中身は上書きしない限り残りますので、「このクソ長いコマンド打つ前にディレクトリ作っとかなあか

  • UNIX今日の技 - UNIX今日の技/zsh

    『UNIX今日の技』の zsh の項目について纏めたものです。 zsh は(おそらく)最強のシェルです。 しかし、どんなシェルでもそうですが、自分で設定してやらないと使えたものではありません。 デフォルトの zsh は鍛えられた tcsh に圧倒的な敗北を喫するでしょう。 記事では zsh の上手な設定のレシピを提案します。 適当に取捨選択して取り込んで、シェルを「鍛えて」下さい。 なお、項では zsh に特徴的なことのみをまとめていく方針です。 tcsh など、シェル一般に共通的な事柄については、『UNIX今日の技/シェル』に書いてありますので、こちらも併せてご覧頂くと良いと思います。 zsh をログインシェルにする? のはやめておいた方が良いと思います。 特に、NIS でやってしまうのはかなりマズいです。 duo などでは zsh が入っていないので「ログインシェルがないのでログイ

  • 関数は共通部品になる

    プログラムを組んでいくと、なんども同じような処理を繰り返すことがあります。例えば、画面に決まったフォーマットで表示する、といった機能などです。こうしたよく使う機能を関数としてまとめることは、シェルスクリプトでも可能です。 ユーザー定義関数の使い方 今回は関数のお話をしましょう。シェルスクリプトでも関数が使えます。ところで「関数」とはなんでしょうか? 通常プログラムの世界で関数というと、ほかのプログラムから呼ばれる「共通部品」のことを指しますね。オブジェクト指向プログラミング(C++Javaなど)の普及で古い言葉になってしまいましたが、昔は「サブルーティン」などと呼んでいました。もちろん厳密な意味では少し違うところもありりますが。 ではシェルスクリプトの世界ではどうでしょう? ここでも関数は同じようにシェルスクリプトから呼ばれる共通部品のことです。シェルスクリプトから呼ばれるものというと?

    関数は共通部品になる
  • csh/tcsh

     * csh/tcsh * ◎ はじめに ・ シェル シェルはユーザーが OS の機能を使うためのインターフェースです。 現在、bash、csh、tcsh、wish、zsh など、多くの種類のシェルが存在しており、それぞれ特有の文法や機能を持っています。 ・ シェルスクリプト ユーザーは普段、一行ずつコマンドライン入力を行うことでシェルを利用します。(GUIなシェルは除く) しかし、決まりきった一連の処理を繰り返し行う場合など、いちいちコマンド入力を行うのは大変手間がかかります。 そこで、一連の処理をファイルにまとめたシェルスクリプトが力を発揮します。 変数、関数、条件分岐、ループといったシェルの機能を用いて構造的なプログラムを記述することができます。 ・ 注意 tcsh は csh を拡張、バグ修正がなされた版です。 ここで紹介している構文はほとんど tcsh を前提にして記述してある

  • いい加減、>/dev/null 2>&1と書くのをやめたらどうか (追記あり) · DQNEO日記

    はじめに これから書く内容は、シェルスクリプトをばりばり書いている現場(サーバエンジニアインフラエンジニア)向けのものではありません。 年に数回crontabをいじるような現場(サーバに詳しくないアプリケーションプログラマが多数を占めるような現場とか、Webデザイナや非プログラマがcrontabをおそるおそるいじったりするような現場)を想定しています。 >/dev/null 2>&1 の問題点 この記法の問題点は、「覚えにくい、間違えやすい、間違ってても気づかない」ということです。 初心者を迷わせる要素がこんなにあります。 >/dev/nullは先か後か 1と2はどちらが先か &はどこに書くのか よって下記のように多種多様なミスが起こり得ます。 2>&1 >/dev/null >/dev/null 1>&2 >/dev/null 2>1& >/dev/null &2>1 これをぱっと見て

    いい加減、>/dev/null 2>&1と書くのをやめたらどうか (追記あり) · DQNEO日記
  • 業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine
  • シェル操作課題 (cut, sort, uniq などで集計を行う) 設問編 - Yamashiro0217の日記

    この記事は弊チームの新人の方にシェル操作に慣れてもらうために作った課題である。 皆様のチームの新人にやってもらってもいいですね。 あとで解答編を書く。 もちろん他の方も解いてもらって構わない。 というか僕の解答以上の解答がきっとあるはずなので、それを教えて欲しい。 はてブで解答でも面白解答お待ちしてます。 さて題。 Webアプリケーションを作っていると偉いさんとか、いわゆる企画の人とかから 「ちょっと○○がどうなってるかログから数字だせない?」 とさらっとお願いされたりする。 そこで「いや、ちょっと手が空いてなくて(こっちは忙しいんだよ糞がっ)」と答えたくなるかもしれないが、 そこは「じゃあさくっとやっておきますよ!僕にかかればちょろいっすよ!」と答えらればかっこいい。 (あまりさくっとやりすぎるとそういう細々依頼がたくさんくる諸刃の剣) 例えば以下のようなログファイルがあったとする。

    シェル操作課題 (cut, sort, uniq などで集計を行う) 設問編 - Yamashiro0217の日記
  • 便利なスクリプト集 MySQL Utilities - rkajiyama’s diary

    実は1.0.0が2010年12月にリリースされていたのに全く知名度の無い"MySQL Utilities"。実は便利な機能が複数用意されているので、スクリプトを手作りしなくても済む可能性大です。またリリースに向けて新たなマイルストーンリリースが出てきたMySQL 5.6でのレプリケーションの追加機能と組み合わせる便利機能もあります。 MySQL UtilitiesはPythonで書かれたスクリプト集で、MySQL Workbenchに同梱されて配布されています。ライセンスは「もちろん」GPLです。2012年7月上旬時点での最新版は1.0.5です。また実行可能なスクリプトの他に、ライブラリとして細かな機能が用意されているため、独自のスクリプト作成にも役立ちます。 起動にはMySQL Workbenchのメニューの【Plugins】から【Start Shell for MySQL Utilit

    便利なスクリプト集 MySQL Utilities - rkajiyama’s diary
  • bashの正規表現マッチングの使い方 - adsaria mood

    あるフリーウェアのインストール用bashプログラムを見ていたら次の様なものがあった。(以下の例は簡略化してある。) STRING="abc" if [[ "$STRING" =~ "^ab[cd]$" ]]; then echo "matched" else echo "unmatched" fi if文の条件表現の中に“=~”というオペレータがある。manを見ると =~ オペレータは文字列を正規表現と比較するとある。知らなかった。bashの文字列比較で正規表現が使えるとは。私は正規表現比較が必要な時はgrepに喰わせて判断していたのだが、これを使えば簡単にできる。 ところが、だ。上のプログラムが期待通りに動かない。上の例では =~ の左辺と右辺の正規表現はマッチするはずだが、結果は“unmatched”。色々と正規表現を変えてみたが、どれとしてマッチングしない。しかし、if文を次のように

    bashの正規表現マッチングの使い方 - adsaria mood
  • UNIX & Linux コマンド・シェルスクリプト リファレンス

    目次 当サイトについて bash シェルスクリプト入門 -シェルスクリプトのいろは- コマンド Tips シェルスクリプト Tips 変数を使用する 配列を使用する 入力と出力 if 文と test コマンド for 文の使用方法 while 文の使用方法 case 文の使用方法 関数の使用方法 引数を処理する 終了ステータス シグナルと trap コマンド フィルタを使用した文字列操作 1 フィルタを使用した文字列操作 2 日付を取得する 文字コードと改行コード シェルスクリプトのデバッグ AWK リファレンス (Deprecated) シェルスクリプト ライブラリ 『ether.sh』 お知らせ Bluesky を始めました @sunone.me 変更履歴 2023.10.07 ページ内リンクを修正した。 2021.02.01 このサイトに「もう 1 ページ追加しよう」と思ってから、も

    UNIX & Linux コマンド・シェルスクリプト リファレンス
  • awk

    awk の使い方 awk とは awk とは、数値や文字列が規則正しく並んでいるテキストファイルに対して以下の操作を行うのに適したコマンド(スクリプト言語)である。 編集(一部分の取り出し、並べ換え) 簡単な数値の計算(表計算) 簡単な処理ならば、C言語でプログラムをするよりも、手早く行なうことができるので、 覚えておくといろいろ便利だろう。 また、文法はC言語に似ているので、C言語を知っている者には簡単に覚えることができる。 Linuxを始めUNIXには標準でインストールされているが、 DOS(WINDOWS)、Mac 用のものもある。 awk の簡単な使い方 その1 awk はコマンドラインでも、C言語のようにプログラムをファイルに書いても実行できるが、 まず、一番簡単なコマンドラインから、実行する方法をやってみる。 最初にも書いた通り、awk は何かのデータを元に処理を進めるので、例

  • テキストファイル内の特定文字列を一括置換させたい~Perl編~

    ファイル内の特定の文字列を置換させたい場合には、sedを使用するのが容易だ。「テキストファイル内の特定文字列を一括置換させたい」Tipsでも紹介をしている。 次の例では、input.txtを読み込み、シングルクォートを削除してからoutput.txtに書き出すという指定になる。

    テキストファイル内の特定文字列を一括置換させたい~Perl編~
  • 1