タグ

shellscriptに関するsuVeneのブックマーク (31)

  • コマンドラインでシェルのエイリアスと関数を使って作業を効率化する | OSDN Magazine

    GNU/Linuxシステムを最大限に活用するには、やはりコマンドプロンプトとシェルスクリプトへの習熟が欠かせない。とはいえ、そうした処理はなるべく手早く済ませたいものだ。稿では、コマンドラインでの作業の手間を最小化してくれる強力な方法として、シェルのエイリアスと関数を紹介する。 ここではbashを例にとって説明するが、以下に示す概念のすべてとコードの大半はその他のシェルでも通用する。 シェルのエイリアスとは、頻繁に実行する長いコマンドを覚えやすくするために付ける別名のことである。コマンドラインから入力された文字列に対し、シェルはまず設定済みエイリアスの一覧とのマッチングを行う。一致するものがあれば、そのエイリアスは対応するテキストに置き換えられ、結果として得られるコマンドライン全体の評価と実行が行われる。以下に、エイリアス定義の例を示す。 alias sqlmanage='mysql -

    コマンドラインでシェルのエイリアスと関数を使って作業を効率化する | OSDN Magazine
  • 添削:業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine - hogehoge @teramako

    幾つか気になる点があるので書いておくよ。 執筆者KEIさんが修正してくださったので、以下の記事は既に古いものとなっている コマンドが左から右に順に実行されます。コマンド1が正常終了(終了コードが0)したら、コマンド2が実行されます。 コマンド1 ; コマンド2 ; ... 業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine コマンド1が正常終了しなくてもコマンド2は実行されます。 なお for文では、次のように条件の設定を指定することもできます。 for ((i=0; i<5; i++)); do echo "$i"; done 業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine C言語っぽくて開発者には分かり易いかもね。 僕としては for i in $(seq 0 5); do

    添削:業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine - hogehoge @teramako
  • rush

    rush is a replacement for the unix shell (bash, zsh, etc) which uses pure Ruby syntax. Grep through files, find and kill processes, copy files - everything you do in the shell, now in Ruby. Previously if you wanted to count the number of classes in your project, you might use a bash command like:

  • 『ゲームで極める シェルスクリプトスーパーテクニック』 | スラド レビュー

    9月6日、技術評論社から『ゲームで極める シェルスクリプトスーパーテクニック』という書籍が出版された。大抵の方は最初「いや、シェルスクリプトでゲームって」、次に「どうせ数当てゲームとかクイズとかだろ」と思われるところだろうが、さにあらず。Amazon.co.jp での内容紹介によると、 書は、シェルスクリプトを使ったリアルタイムシューティングなどのゲーム作成を通して、今まで知られていなかったシェルスクリプトの新たな可能性を紹介します。 「リアルタイム」で「シューティング」である。正確にはシューティング風タイピングゲームが正しいが。掲載されているゲームとしては他にテトロミノゲーム(いわゆるテトリス)と、スネークゲームがある。FreeBSD にリモートログインして実行した様子を YouTube に投稿してみたので参考にして欲しい(キャプチャの都合でカクカクがひどくなっている)。

  • shellscript games from a book in Japan

    On Sep. 6th, "Mastering shell script super technic by game" (ISBN: 978-4774132020) is published in Japan. This is demonstration in FreeBSD environment remote-connected from Windows. NOTE: I'm NOT an author of the book, just a reader.

    shellscript games from a book in Japan
  • Open Tech Press | シェルスクリプトで引数をパースする

    2007年7月20日10:10 Carl-Albing、JP-Vossen、Cameron-Newham(2007年7月17日(火)) 自作のbashのシェルスクリプトで何らかのオプション、すなわちスクリプトの動作を変更するためのフラグを使えるようにしたいとしよう。このような場合、${#} を使って与えられた引数の個数を取得したり、${1:0:1}を使って最初の引数の最初の文字が「-」かどうかを判定したりするなど、直接自分でパースすることもできるが、自分でパースする場合には、与えられたオプションが何であるかとか、引数を取っているかどうかとかを確認するためにif/thenやcaseなどを使ったコードを自分でさらに書き足す必要があるだろう。 しかしそうしたところで、例えば、続けてその後に引数を指定する必要のあるオプションに対して必要な引数をユーザが与えなかった場合、あなたの自作のルーチンはどう

    Open Tech Press | シェルスクリプトで引数をパースする
  • パイプ - odz buffer

    Unix(or its variants)のシェルがどうやってるのかは知らないけど (少し前に Artonさんのところで何か見たような記憶はあるが)、 Windowsの場合は大まかに コンソール プロセスを生成して標準ハンドルをリダイレクトする方法 にあるように 入力用、出力用の二つの無名パイプを作る(CreatePipe) → それぞれを起動する子プロセスのための 標準入力、標準出力および標準エラー出力用のハンドルににDuplicateHandle → 得られたリダイレクト用のハンドルを用いて CreateProcess という手順になるので、 複数段のパイプの尻尾から順番にこのハンドルの複写手順を取りながら 必要なプロセスを起動していくのではなかろうかと。 んー cmdline.split('\|').each{|prc| ほげほげ} て感じ? おー、UNIX も Windows もあ

    パイプ - odz buffer
  • http://www.netfort.gr.jp/~tomokuni/lms/shell/text/shell.txt

  • http://www.tsden.org/takamiti/shText/shText000.html

  • 10.2 有害な csh プログラミング

    Path: coconuts.jaist!wnoc-tyo-news!newsfeed.btnis.ad.jp!np0.iij.ad.jp!news.iij.ad.jp!rim.or.jp!tamaru-news!kuee-news!kuis-news!news.cs.ritsumei.ac.jp!odins-suita!chiba-ns!sakunami!Makino-Lab.cc.tohoku.ac.jp!not-for-mail From: hiroki@aso.ecei.tohoku.ac.jp (Hiroki Mori) Newsgroups: fj.archives.documents Subject: Csh Programming Considered Harmful (in Japanese) Supersedes: <5s83cm$rrg$1@dp-cc.cc.toho

  • csh cシェル 簡単なシェルプログラミングまとめ

    csh(cシェルと読む)は、UNIX上のコマンドインタプリタで、 コマンドを読み込み、解釈し、実行までを行います。 シェルプログラムはシェルが解釈するコマンドの集まりです。 コマンドを組み合わせて、多様な機能をもつ新たなコマンドが作れます。 cシェルの動作は以下のようになります。 全体構造 #! /bin/csh ... ... !/bin/csh -fZCX とスクリプト1行目に書くと、 ~/.cshrc を読み込まみません。-f オプションを 付けていないスクリプトでは ~/.cshrc中で定義している設定(alias等)が有効に なります。 if 文 if ( 条件 ) then コマンド (任意の行数可) else if (条件) then コマンド (任意の行数可) else コマンド (任意の行数可) endif 例 #! /bin/csh if ($#argv != 1) t

    csh cシェル 簡単なシェルプログラミングまとめ
  • Shell file descriptor manipulation

    シェルのファイルディスクリプタ操作 2004/10/8 指摘を追記しました。 2000/8/1 説明を追加(特に遷移図に説明を補足しました)。 目標 $ (command 3>&1 >/dev/null 2>&3) | wc が何を意図したコードか分かり、かつ内部的な動作を説明できること。 見た瞬間、「あぁ、あれね((C)タグチイ)」という人は読む必要はありません。 前提知識 前提として、ファイルディスクリプタの概念の理解が必要です。 ファイルディスクリプタは「なんらかのモノ」と結び付けられた数値です。 「なんらかのモノ」は、Unix的にはファイルだけです、と言い切ってもいいのですが、ここでは分かりやすさを優先させて、コマンドの出力が送り込まれる対象だと見なします。 「コマンドの出力が送り込まれる対象」を、次の3つに分類します。 ()内の表記は、今後の省略記号です。 画面([screen

    suVene
    suVene 2007/03/29
    シェルのファイルディスクリプタ操作について
  • ReJax - Easiest Regular Expression Tester. Ever.

    Have a pattern you want to test? Give it a shot. ReJax does one thing and one thing well: pattern testing. Updated June 27th, 2007 ReJax has been down for a while, but is back up now. Sorry for the trouble :) Supported languages: JavaScript PHP 5 PCRE PHP 5 POSIX Ruby - BETA!! PERL 5 UNIX Shell Pattern It is not necessary to enter the beginning and ending slashes in the pattern field. Not all modi

  • 漢のzshに乗り換えた時にアッーってなるコト - 技術メモ帳

    男のbashユーザーが、バラ色の紳士こと漢のzshに乗り換えたときに アッーってなるコト事を先ほどいくつか思いついたので共有する。 !!とかの履歴実行はrコマンドで zshには、r というシェル組み込みコマンドがあって 履歴からの実行が簡単に行える。 たとえば、一番最後に実行したviコマンドを実行したいときなどだ。 bashなんかだと !vi で出来るのだが、 rコマンドだったら % r vi でよい。 直前に実行したコマンドを再び実行したいとき、 bashなんかだと !! というやり方になるが、 rコマンドでは、 % r とするだけでよい。 また、文字列を置き換えてからの履歴実行はどうだろう。 たとえば次のようなbashの例だ。 $ vi .zshrc $ !vi:s/zsh/bash/ これは、最後に実行したviコマンドの引数文字列を ":s/zsh/bash/" によりzshという文

    suVene
    suVene 2007/02/19
    履歴周り、リダイレクト周り
  • 【コラム】漢のzsh 第1回 最強のシェル、それは「zsh」 (MYCOMジャーナル)

    IDEの発展やAjaxなど現在のデベロッパにとってGUIとうまくお付き合いすることは開発効率を上げるうえで必須といえる。しかしながら、シェルというCUI環境も根強い人気がある。GUIと違ったカスタマイズ、アジリティ、効率の良さ、幅広い対応プラットフォームなど、なくてはならないものだ。 連載ではそうしたCUI環境の充実を補佐することを目的とし、"zsh"について語ってみようとおもう。かつてzshはUTF-8の扱いが弱いところがあったが、それもずいぶんと改善され、ここ1年でzshへ移行しやすい状況が整ってきている。はじめるには悪くないタイミングだ。 最初に軽くzshについて紹介しておこう。 名前につく"z"の文字は、「究極の」という意味がこめられているらしい。系統としてはsh系である。つまり、zshはsh系の超高機能シェルといえるだろう。Linuxなどのユーザーであればsh系であることの意味

    suVene
    suVene 2007/02/09
    タイトルが意味不明w / 第一回だとしても中身薄い。
  • shell のちょっとしたテクニック - odz buffer

    後輩が cat README | tr ' ' '\n' | sort | uniq -c | sort -nr | head てなテクニックを見て、びっくりしたみたいな話をしていたのだが、こういうパイプラインを利用するテクニックを学んでいないのは色々損な気がする。 ていうか、サーバで丸一日以上かかるような処理を実行するのもしょっちゅうなのに、GNU screen も nohup も知らないってのはいろいろ支障があるような気もするのだが、だれも教えないものかなぁ。 ということで、bash or zsh のちょっとしたテクニックとか*1。リダイレクトとかパイプラインは略。 連続実行 単純に連続実行。 % foo; barfoo が正常終了したときだけ bar を実行 % foo && barfoo が正常終了しなかったときだけ bar を実行 % foo || bar&&、||は来は論理演

    shell のちょっとしたテクニック - odz buffer
  • Geekなぺーじ:10のUNIX小技

    IBMのサイトで「Learn 10 good UNIX usage habits」という記事が発表されていました。 面白かったので要約してみました。 変な部分があるかも知れないので詳細は原文をご覧下さい。 原文とは一部異なります。 ページスペースなどの関係でコマンド引数などを短く省略しています。 原文のサンプルコマンドが間違っていたりするので、修正している部分もあります。 原文を修正しているのは、tar.gzをzオプションを使わないでxfvしようとしているところと、xargsにlsではなくls -lを渡している部分です。 あと、説明文を短くしてしまっています。 1. ディレクトリの作成 良く使うコマンドの一つであるmkdirですが、面倒臭い使い方をしていませんか? 悪い例 ~/ $ mkdir a ~/ $ cd a ~/a $ mkdir b ~/a $ cd b ~/a/b/ $ m

    suVene
    suVene 2007/01/11
    ブクマしようとして、ブクマ数にビックリしたw
  • 複数のファイルの名前をまとめて変更する on zsh - 技術メモ帳

    最も簡単なやり方を紹介するのを忘れていた。 for file (*.html) mv $file $file:r.htm

  • シェルスクリプトでランダムな数字を得る方法 - World Wide Walker

    シェルスクリプトでランダムな数字を得る方法 Posted by yoosee on Debian at 2006-11-17 23:42 JST1 bash, zsh で $RANDOM を使う故あってシェルスクリプトの中で 0 〜 n のランダムな数字を使う必要があったのだが、いい方法が思い付かず IRC で聞いてみた。「pid を使う」「epoch time を使う」「 dd if=/dev/urandom する」と言う方法も教えてもらったが、そもそも bash や zsh ならば $RANDOM と言う変数が用意されているらしい。RANDOM   このパラメータが参照される度に、 0 から 32767 までのランダムな整数が生成されます。 と言うわけで、例えば 0〜99のランダムな数字を得たいならnum=`expr $RANDOM % 100`でよさそう。 ちなみにその時に topl

  • 窓の杜 - 【NEWS】MS、システム管理者向けの新コマンドシェル「Windows PowerShell」v1.0を公開

    Microsoft Corporationは14日(現地時間)、「コマンドプロンプト」に代わるシステム管理者向けの新しいコマンドラインシェル環境「Windows PowerShell」v1.0を公開した。Windows XP/2003/XP x64/Server 2003 x64/Server 2003 IA64に対応するフリーソフトで、現在同社のダウンロードセンターから日語版をダウンロードできる。動作には.NET Framework 2.0が必要。 「Windows PowerShell」は、“Monad”のコードネームで開発が進められていたコマンドラインシェル環境。ファイルへのアクセスと同様の操作でレジストリなどのシステムデータを扱えるほか、.NET Frameworkのオブジェクトをコマンドライン上から操作できるなど、システム管理者やプログラム開発者向けの機能が充実しているのが特長