タグ

shellに関するkomzのブックマーク (42)

  • シェルコマンド学習用ツール shellfish を作った | Born Too Late

    シェルコマンドに関して、昨日は 2 つの記事が目につきました。 sort と uniq でさくっとランキングを出力する シェル操作課題 (cut, sort, uniq などで集計を行う) 設問編 これらはそんなに難しい処理ではないものの、この辺の技量は普段どれぐらい黒い画面上で生活しているかによって大分違ってくる気がします。 こういうのを効率的に学習できツールがあれば便利なんじゃないかと思ったので、shellfish というツールを作りました。 yuya-takeyama/shellfish Shellfish とは 与えられた問題を、コマンドを駆使して解決していくゲームです。 Shellfish のシェル上でコマンドを実行し、出力が問題ごとの期待結果に一致すれば正解です。 言ってみればターミナル上で動作する、ワンライナー専用の Anarchy Golf みたいなものです。 問題ファイル

    シェルコマンド学習用ツール shellfish を作った | Born Too Late
    komz
    komz 2012/08/14
  • シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third

    エンジニアという職業柄かシェルスクリプトを書くことはちょくちょくあるのですが、自分なりに気を付けていることを備忘録&自分への戒めも含めて、簡単に書いてみたいと思います。 変数は大文字 シェルスクリプト書いていれば変数の出番は至るところであるでしょう。その際、可読性を増すように、変数は大文字を使っています。 RET=`cmd1`みたいに。好みの問題もあるでしょうが、分かりやすいので。 クオテーションは選ぶ クオテーションにはシングルだったり、ダブルだったり色々ありますが、使い分けておいたほうがよいでしょう。 変数の展開がないようであれば、シングルクオーテーションのほうがスマートでしょうし、展開があるのならダブルクオーテーションを使えばと。 ダブルクオーテーションを使うのにも意味があって、変数は「$RET」のようにクオテーションで囲まなくても動作はたいていするのですが、 echo "${RET

    シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third
  • OSに付属するシェルスクリプトを読んで技術を盗む

    今回から、OS付属のシェルスクリプトを読んでいく。多くの人が使っているスクリプトを読むことで、シェルスクリプトならではの書き方、テクニックを身に付けることができるはずだ(編集部) 他人の技術を盗まなければ進歩はない 外国語をマスターするにも、楽器の演奏を覚えるにも、上達するにはただ練習するだけではダメだ。素晴らしいお手を見つけて、よく観察し、何度もまねることが必要だ。お手から技術を「盗む」ことが大切だということだ。 プログラミングでも同じことが言えると思う。文法を覚えて、ただひたすらプログラムを書くだけではなかなか上手にならない。スキルのある人のコードを見て、技術を盗もう。開発チームのメンバーそれぞれが書いたコードを持ち寄って、お互いに批評し合う「コードレビュー」に参加している、あるいはリーダーとして主催しているという人は多いと思う。このコードレビューも、人から技術を盗む良い機会と言え

    OSに付属するシェルスクリプトを読んで技術を盗む
  • テキストファイルを処理するときのUnixコマンドまとめ - nokunoの日記

    個人的にテキストファイルを処理することが多いのですが,簡単な処理ならUnixのコマンドをパイプとリダイレクトで組み合わせてできることが多くあります.今回はそんななかでもちょっとマニアックなTIPSをまとめてみました. sortコマンドでタブ区切りのファイルを指定する最近知って驚愕したのがこれ.sortコマンドでタブ区切りのファイルを指定したいときは,Ctrl+v Tabでタブ文字を入力していたのですが,$ sort -t $'\t' -k 2,2 のようにしてタブ区切りで2番目のキーでソートすることができます. 1000行おきにデータをサンプリングする1000行おきにファイルからデータをサンプリングしたいときとかは,perlでワンライナーを書くのが速いようです.$ perl -ne '$i++; print unless ($i % 1000)' 某所のコードゴルフによるとこれだけ短くでき

  • cmd.exe のコマンドラインの仕様を解析してみた - 永遠に未完成

    cmd.exe の引数の扱いがあまりにもカオスだったのでちょっと頑張って調べてみた。 来ならここは公式の資料に当たるのが正しいアプローチだと思うけど、どうしても公式の資料が見つからなかったので、色々試して推測してみることに。 断片的な資料は見付けたけど、完全じゃない。一応URL貼っておく。Windows Server 2003 のヘルプだけど、恐らくそんなに変わらないと思う。 コマンド シェルの概要 コマンド リダイレクト演算子を使用する なので、以下で述べる内容は間違いを含む可能性があります。というか正確さは一切保証されないのであしからず。 検証方法 以下のような引数をただ表示するだけの簡単な C のプログラムを用意した。仮に args.exe とでもしておく。 #include <stdio.h> int main(int argc, char const* argv[]) { in

    cmd.exe のコマンドラインの仕様を解析してみた - 永遠に未完成
  • UNIXのsedチュートリアル10 | エンタープライズ | マイコミジャーナル

    Guides, HowTos and Tips for Technology Geeks - The Geek Stuff Sasikala氏がThe Geek StuffにおいてUnix Sed Tutorial: Find and Replace Text Inside a File Using RegExのタイトルのもと、sedコマンドで置換を実施する場合の使い方とその例題をまとめている。sedはテキストファイルから特定の行を表示したり削除、または特定の文字列を置換する用途で用いられる。特に文字列の置換をおこなうためのツールとして活用されることが多い。 sedは便利なツールだが、置換の指定方法はマニュアルを読むだけではわかりにくいところがある。実例を通して身につける方法がわかりやすい。Unix Sed Tutorial: Find and Replace Text Inside a

  • Windowsのコマンドプロンプトを便利に使うための10のミニテクニック

    はじめに Windowsの操作の基GUIですが、ファイル操作などを手早く行うためにコマンドプロンプトを使うこともあると思います。稿では、Windowsのコマンドプロンプトをより便利に使うためのちょっとしたテクニックを10個紹介します。 対象読者 Windowsのコマンドプロンプトをある程度使ったことがある方 動作確認環境 Windows Vista Windows XP 一部の機能は、Windows XPでは利用できません。文内で都度補足します。 コマンドプロンプトからエクスプローラに移動する コマンドプロンプトで作業中に、カレントディレクトリのファイルをエクスプローラで操作したくなることがあります。たとえば、カレントディレクトリにあるいくつかのファイルをほかのディレクトリにコピーする場合、各ファイルの名前をキーボードから入力するより、マウスを使ったほうが簡単です。そんなときに便利

    Windowsのコマンドプロンプトを便利に使うための10のミニテクニック
  • Bash&シェルスクリプトを極めるテクニックまとめ | OSDN Magazine

    UNIXやLinuxのエキスパートになるのに避けて通れないのが、Bashに代表されるコマンドラインシェルによる操作だ。そこで記事では、「Bashのカスタマイズ」「シェルスクリプトの高等テクニック」「Bash以外の高機能シェル」の3つについて、SourceForge.JP Magazineで過去に掲載された解説記事を紹介する。 Bashをカスタマイズして使いこなす Bashは非常にカスタマイズの幅が広く、またちょっとした改良や簡単なシェルスクリプトの利用により、大きく作業効率が改善する。ここでは、Bashのカスタマイズテクニックを解説する記事を紹介する。 コマンドラインでシェルのエイリアスと関数を使って作業を効率化する GNU/Linuxシステムを最大限に活用するには、やはりコマンドプロンプトとシェルスクリプトへの習熟が欠かせない。とはいえ、そうした処理はなるべく手早く済ませたいものだ。

    Bash&シェルスクリプトを極めるテクニックまとめ | OSDN Magazine
  • unixコマンド擬似バッチファイル(nl,wc-l,tail,reverse,head) - Windows Script Programming

    バッチファイルでunix風のコマンドを幾つか作ってみました。 nl.CMD 行番号を振る。 @ECHO OFF REM Usage: nl file FIND /N /V "" <%1 wc-l.CMD 行数をカウントする。 @ECHO OFF REM Usage: wc-l file FIND /C /V "" <%1 tail +n ファイルの先頭からn行目以降を表示する。 MORE +# file ここで、n-1を指定する。 tail.CMD ファイルの末尾からn行を表示する。 @ECHO OFF REM Usage: tail [-#] file SETLOCAL SET /A k=-1 SET n=%~1 IF NOT %n:~0,1%==- GOTO :1 SET /A k=n SHIFT :1 (FOR /F %%n IN ('FIND /C /V ""') DO SET n

    unixコマンド擬似バッチファイル(nl,wc-l,tail,reverse,head) - Windows Script Programming
  • phpsh -- an interactive shell for php

    phpsh -- An interactive shell for php phpsh is an interactive shell for php that features readline history, tab completion, quick access to documentation. It was developed at Facebook and ironically, is written mostly in python. It is open source and released under a modified BSD license. If you don't have --with-readline and --with-libedit compiled into your PHP binary but you do have Python2.4 i

    komz
    komz 2009/04/17
  • PHPのインタラクティブなシェル·phpsh MOONGIFT

    PHPには元々対話型のインタフェースが用意されている。が、あまり使い勝手は良くなく、使ってはこなかった。改めて見てみて、何が悪いのかと思ったが、ただPHPの構文を実行しているだけで、「;」を入力したりechoを打ったりするのが面倒なのだ。 インタラクティブなPHPシェル もっとインタラクティブに遊べる方が面白い。PythonRuby(irb)のように。そこで使ってみたいのがphpshだ。 今回紹介するオープンソース・ソフトウェアはphpsh、インタラクティブなPHPシェル環境だ。 phpshは一行ごとにPHPの式が評価される。はじめに=を付けておけば、実行結果が表示される。さらにPerlのように「$_」という変数で前の式の結果を取得することができる。Pythonと組み合わせる必要があるのがちょっと面白い。 直前の実行結果には$_でアクセスできる CTagに対応しており、タグファイルを生成

    PHPのインタラクティブなシェル·phpsh MOONGIFT
  • Top 10 Command Line Tools

    Click to viewWhen you need something done quickly, efficiently, and without any software overhead, the command line is where it's at. It was the first way humans told computers what to do, but as graphics became increasingly important, the command line, or terminal, became an insiders' secret weapon. But with the right commands and a little bit of know-how, anyone can get things done from a text-o

    Top 10 Command Line Tools
  • 『Shell Prompt』で自分のパブリックIPアドレスを表示 | ライフハッカー・ジャパン

    Linux/Mac/Windows環境でのCygwin : パブリックIPアドレスを表示させる必要がある場合、『Geektool』を使ってカスタマイズされたデスクトップへ追加したい時、シンプルなコマンドでそれを可能に出来るんです。 『curl』または『wget』コマンドラインユティリティを使ってリモートウェブサーバからページを要求するためのシンプルトリックがサイト「Command-line Fu」で紹介されていたので、そちらをご紹介。ページからはIPアドレスのみが解析されます。このテクニックはパブリックIPアドレスを表示する多くのウェブサイトで使用可能です。とはいえあまり使いすぎるとブロックされる可能性もありますが...。 Macシステムはデフォルトで『wget』は入っていないので、IPをサイト「myip.dk」から取得するためのcurlコマンドが使えます。下記をshellスクリプトに追加

    『Shell Prompt』で自分のパブリックIPアドレスを表示 | ライフハッカー・ジャパン
  • Cygwinのインタフェースがどうも…と思う方は·MinTTY MOONGIFT

    最近ではあまり利用者は見かけないが、かつてWindows上でLinuxライクなコマンドを使おうと思ったら最大の選択肢だったのがCygwinだ。今でも現役であり、Windows上で様々なLinux向けの資産を使おうと思うと便利なソフトウェアだ。 標準ターミナルよりも使いやすい! だがそのターミナルと言えば…正直使いづらかった。通常使うターミナルとかけ離れた使い勝手のせいで、不便に感じてしまった人も多いのではないだろうか。そんな経験をお持ちの方はMinTTYを使ってみよう。 今回紹介するオープンソース・ソフトウェアはMinTTY、Cygwin用のターミナルエミュレータだ。 MinTTYはPutty 0.60をベースに開発されたソフトウェアで、Windowsとの親和性が標準のターミナルよりも高い。オプションも数多く、フォントの入れ替えや画面の大きさの変更、色の設定なども行える。半透明表示も可能だ

    Cygwinのインタフェースがどうも…と思う方は·MinTTY MOONGIFT
  • Console

    Console is a Windows console window enhancement. Console features include: multiple tabs, text editor-like text selection, different background types, alpha and color-key transparency, configurable font, different window styles

  • lsコマンドをハックしてみよう

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ショッピング事業部開発部の吉野です。 Yahoo!ショッピング開発部では新人エンジニア向けにコマンドのソースコードを読むことを奨励しています。 その初期の題材として、lsコマンドがよく挙げられます。 今回は「lsコマンドをハックしてみよう」と題し、lsコマンドについてお話しさせていただきます。 突然ですがエンジニアの皆さん、lsコマンドのソースコードを読んだことはありますか? 読んだことのない方はぜひ一度、目を通しておくことをおすすめします。 意外と知られていませんが、lsはcd,pwdなどのコマンドと違いシェルの組み込みコマンドではありません。 一口にlsと言っても、複数のソースコードが存在します。 代表的なのはGN

    lsコマンドをハックしてみよう
  • GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ
  • ウノウラボ Unoh Labs: シェルの仕組み(前編)

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: シェルの仕組み(前編)
  • シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Java BlockingQueueで遊ぶ:パイプラインごっこ」でパイプラインの話をしたので、来の、つまりUnixのパイプやリダイレクトを少し調べてみました。 たまに話題となる some-command >file 2>&1 と some-command 2>&1 >fileの挙動の違いについて、「シェルはコマンドラインリダイレクトの指定を右から左に解釈実行する」なんて説明が見つかりました。んなバカな! パージングは左から右にするものですよ。パーズツリーを逆順にたどることはできるけど、そんなことする必然性はなんにもないよ。 次の記事を読むと、「右から左」なんて事情じゃないことが分かるでしょう。 UNIXの部屋 検索: リダイレクト シェルのリダイレクトにまつわる失敗 さてここでは、複雑なリダイレクト処理も完全に理解できる処方箋を示しましょう。例えば、次のコマンドラインが何をするか分かる

    シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)
    komz
    komz 2007/12/22
  • Windows PowerShell

    Windows Power Shell は、 Windows をコマンドラインから、あるいは、 スクリプトを使って管理するために作られた新しいシェル環境です。 作られた目的のせいか、 Power Shell を解説する書籍・ウェブサイトには、 「管理者向けの TIPS、実例集」 (レジストリの値の変え方とか、WMI の呼び出し方とか) みたいな物が多かったりします。 でも、Power Shell を調べてみた感じ、 Power Shell 用のスクリプト言語や、 コマンドレットの動作・作り方など、 プログラミング的にも結構面白そうな感じなので、 その辺りを中心に話をしてみようかと思います。 (注: コマンドの実行結果など、 ページ表示の収まりをよくするため、 ところどころ省略している部分があります。 )

    Windows PowerShell