タグ

shellに関するyokochieのブックマーク (40)

  • rupa/z: z - jump around

    Z(1) User Commands Z(1) NAME z - jump around SYNOPSIS z [-chlrtx] [regex1 regex2 ... regexn] AVAILABILITY bash, zsh DESCRIPTION Tracks your most used directories, based on 'frecency'. After a short learning phase, z will take you to the most 'frecent' directory that matches ALL of the regexes given on the command line, in order. For example, z foo bar would match /foo/bar but not /bar/foo. OPTIONS

    rupa/z: z - jump around
  • シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third

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

    シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third
  • はじめに/おしらせ - USP友の会

    シェルでどこまでできるのか?みんなで世界にチャレンジしようUSP友の会とは? USP(ユニバーサル・シェル・プログラミング)友の会は、日唯一の、シェルプログラミングファンのコミュニティです。2009年5月にスタートした会は、シェルプログラミングに限らず、簡潔明瞭さ、創意工夫を尊ぶエンジニアが集まり、技術の話題に花を咲かせています。 >>詳細はこちらから。 友の会からのお知らせ 第11回定例会(忘年会)のご案内 今年最後の定例会のご案内です。 さかなクンご推薦のお店で、ぴちぴちのお魚を堪能しながらのシェルスクリプト談議、いかがでしょう? お友達、奥様ほか、皆様お誘いの上、ご参加ください! 日時:2010年12月20日(月) 19:30~ お申込・詳細はこちらから。 WEB会員入会フォーム メールアドレスを登録するだけでUSP友の会に参加できる「WEB会員」へのお申込は、以下のフ

  • "set -e": 実行コマンドが0以外の終了コードの場合、シェルスクリプトを終了する - 元RX-7乗りの適当な日々

    「シェルスクリプトの実行過程でエラーが発生した場合に処理を止めたい」・・・それをすごくシンプル(簡単)に実現したい場合に使えます。 例えば、以下のようなシェルスクリプトを書いた場合、、、 #!/bin/sh mkdir /tmp/hoge/fuga touch /tmp/hoge/fuga/test.txt 実行結果は以下のようになります。 $ ./test.sh mkdir: ディレクトリ `/tmp/hoge/fuga' を作成できません: そのようなファイルやディレクトリはありません touch: `/tmp/hoge/fuga/test.txt'にtouchできませんでした: そのようなファイルやディレクトリはありません/tmp/hogeディレクトリが存在しないので、/tmp/hoge/fugaのmkdirでこけます。まぁ普通ですよね。。。 が、何も考えずに書くと、↑のように、その

    "set -e": 実行コマンドが0以外の終了コードの場合、シェルスクリプトを終了する - 元RX-7乗りの適当な日々
  • screenを使ってファイルを転送する。 - こせきの技術日記

    「いま、sshで見えてるこのファイルが手元にほしい」という時に、scpは手間がかかりすぎる。 接続するホスト = sshで接続しているこのホスト 欲しいファイル = いまlsで見えてるこのファイル なのに、なぜscpにコマンドラインオプションを渡さなければならないのか。そもそも踏み台サーバを経由している場合など、単純にscpできないこともある。 目の前のssh接続を利用して、ファイルを手軽に転送したい。できることならリモートのコマンドラインで $ get file.tar.gz $ put file.tar.gz としたい。が、実現する方法が思いつかないので、screenを使う方法を考えた。 以下、Ctrl-Aはscreenの設定にあわせて読みかえてください。 Screen User's Manual GNU 404 - エラー: 404 JM 原始的な方法。 uuencodeされたファイ

    screenを使ってファイルを転送する。 - こせきの技術日記
  • ファイルパスからファイル名や拡張子を自由に取り出す - ザリガニが見ていた...。

    いつも、いざ使う時になって、どうやるんだっけ?と探し回ってしまうので、忘れないようにメモ。(以前の日記でも、所々分散して書いているかもしれないが、ここで総括的に記録することにした) シェルスクリプト $ fpath='/a/b/c.d.e' # ファイル名を取り出す(拡張子あり) $ fname_ext="${fpath##*/}" $ echo $fname_ext c.d.e # ファイル名を取り出す(拡張子なし) $ fname="${fname_ext%.*}" $ echo $fname c.d # 拡張子を取り出す $ fext="${fpath##*.}" $ echo $fext e # ディレクトリを取り出す $ fdir="${fpath%/*}" $ echo $fdir /a/b なるほど! そして、仕組みとしては、以下のルールしたがって変換されているようだ。 ${

    ファイルパスからファイル名や拡張子を自由に取り出す - ザリガニが見ていた...。
  • ターミナル使いこなし! - シェルのショートカットコマンド - FreeBSDいちゃらぶ日記

    4月に新しい生活をスタートし、初めてのunixと格闘。それから三ヶ月、CUI操作に慣れてきた頃合いではないでしょうか。 そうすると、次にうずうず渦巻くのがもっと華麗に、美しく、操作したい!という欲望。 そんな欲望を満たしてくれる、そんな妖しい薬。それがこのエントリです。 シェルのコマンドライン操作を華麗に! ターミナルでの作業。自分はBackSpaceを連打している中、横ではカッコいいお姉さま先輩は鮮やかな指裁きで無駄のない操作。次々と設定を済ませてゆきます。 ああ、あんな風に私もなりたい...。でもどうしたら?鉄ゲタ履いてランニング?いえいえ、そんなことをする必要はありません。貴方に必要なのは、シェルの移動系コマンドです! 移動系コマンド 以下の動作確認はtcsh 6.15.00、及びbash version 4.0.24にて確認したものです。zshも恐らく、使えると思います。 [CTR

    ターミナル使いこなし! - シェルのショートカットコマンド - FreeBSDいちゃらぶ日記
    yokochie
    yokochie 2010/02/26
    よくあるGNUプロダクトのキーバインディング / Emacsのキーバインディングと同じ
  • ターミナルで現在時刻を表示し続ける方法 - tilfin's note 跡地

    コマンドラインで実行するスクリプトで、同じ行に表示し続けたり上書きして表示するものがある。 例えばパッケージのインストールになどで出る進捗表示などである。同じような出力をするにはエスケープシーケンスを知っておく必要がある。ASCII コードの制御文字と呼ばれるものだ。CR, LF といった改行コードに関する以外にも様々なものがある。 echo hogehoge とやると、hogehogeが出力されて次の行にプロンプトが移る。 $ echo hogehoge hogehoge $echo -e "hogehoge\c"; echo 123 と実行すると \c が指定されると行末での改行が行われなくなる*1ので、次のように続けて表示される。 $ echo -e "hogehoge\c"; echo 123 hogehoge123 $\r はキャリッジリターン(復帰)である。これを使うとプロンプ

    ターミナルで現在時刻を表示し続ける方法 - tilfin's note 跡地
  • HugeDomains.com

    Captcha security check digape.com is for sale Please prove you're not a robot View Price Processing

    HugeDomains.com
  • cut、head、tail、sort・・・定番のフィルタコマンドを使いこなす! ~業務でラクするためのUNIXテクニック~

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

    cut、head、tail、sort・・・定番のフィルタコマンドを使いこなす! ~業務でラクするためのUNIXテクニック~
  • ウノウラボ Unoh Labs: シェル(bash)スクリプトを書くときのTips

    尾藤正人(a.k.a BTO)です UNIXを使う時にはシェルスクリプトをよく使います。 ちょっとしたコマンドを実行するには、シェルスクリプトは非常に便利です。 今回はシェルスクリプトを書くときに覚えておいた方が便利なTipsを紹介します。 非互換性 ここで紹介するものは基的にbashで動作するものになります。 伝統的なBourne Shellでは動作しないことが多くあると思います。 しかしながら最近はbashがメインで使われることが多いので、"だいだいの環境で動くからおk"ぐらいのノリで使ってもらえればと思います。 $(...) コマンドを"$(", ")"で囲むと実行結果をコマンドラインに代入してくれます。 一見これは"`"(バッククオート)と同じに見えますが、"$()"にはネストができるという利点があります。 例えばシェルスクリプト自身の絶対パスを取得するのは次のようにで

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 初めてシェルスクリプトを書くときに知っておきたいこと - Unix的なアレ

    他の言語をを書き慣れてから、シェルスクリプトを書こうとするとしょうもない部分でハマったりすることがあります。「簡単な処理だからシェルスクリプトで書くか」と思っても無駄に時間がかかってしまっては仕方ないですよね。 今回は初めてシェルスクリプトを書くときに、ハマりそうな点について説明をしたいと思います。 実行権限をつける 単純にファイルを生成しても下記の用に実行しようとしても実行はできません。 # touch test # ./test sh: ./test: Permission denied # touch foo # ./foo sh: ./foo: Permission denied これはファイルに実行権限がついていないため、起きる現象です。 chmodコマンドを使って実行権限をつけてやりましょう。 # chmod +x test # ./test # chmod +x foo #

    初めてシェルスクリプトを書くときに知っておきたいこと - Unix的なアレ
  • perl - the best friend of find(1) : 404 Blog Not Found

    2008年02月24日22:45 カテゴリLightweight Languages perl - the best friend of find(1) find(1)ネタというのも、定期的にネットを賑やかにする時候ネタになりつつあるようです。 いまさらxargsの便利さを主張してみる findでファイル検索入門 - builder by ZDNet Japan というわけで、いまさらfindとperlの相性のよさを再確認してみることにしてみます。 基形 まずは、これを覚えておきましょう。 find [options and args of find] -print0 | perl -l0ne 'perl program' findが見つけたファイルを一つ見つけると、perlの$_にそのファイル名が入るのでそれに対して何らかの処理を行います。 perl側の-l0neというのは、以下と同等

    perl - the best friend of find(1) : 404 Blog Not Found
  • svk の shell が欲しい - daily dayflower

    と思って探したら,ありました。 svk使ってると「svk st」→「svk di」→「svk ci ファイル名 -m ほげほげ」とかよくやるんですが、「svk」の部分がDRYじゃないと思ったので超簡易SVKシェルを作ってみましたよ。 いちいち「svk なんちゃら」って打つのが面倒な人のためのSVKシェル - Greenbear Diary Ruby 使って readline と system を利用してます。のでびっくりするほどシンプル。 2008/01/25 追記: yhara さんがさらに発展させた Reposh というシェルをリリースなさってます。 んで,svk はせっかく Perl で書かれていますし,モジュールもあるので,Perl で書いてみました。まるでシンプルじゃなくなってしまった罠。 Term::ShellUI は神! でも,このスクリプトのままだとファイル名補完とか使えな

    svk の shell が欲しい - daily dayflower
  • livedoor Techブログ : tcshの設定どうしてますか?

    こんにちは、栗原です。 皆さんは、どんなシェルを使っていますか? 私は、昔からtcshを愛用しています。 どのシェルでも同様の事が言えると思いますが、シェルは設定項目が多いために自分が思うベストの設定にするまでかなりの時間がかかります。 しかし、特殊な設定を除いて、ほぼ普通の人であれば設定するであろう共通の設定というのもあり、それらを一から精査し設定するのはけっこう面倒な作業ですよね。 そこで今回は、私が愛用しているtcshにおける普通は誰もが設定するであろう設定をまとめた設定ファイルを提供しているサイトをご紹介します。 その名も「.tcshrc」。sourceforge.netプロジェクトの一つです。 名前がそのまんまですね。 このサイトは見るとわかりますが、Latest Version 1.6.0がリリースされた2004年以降まったく更新されていません。こんな昔の.tcshrcの設定

  • 【コラム】漢のzsh (23) コマンド補完設定 - アーキテクチャタイプ編 | エンタープライズ | マイコミジャーナル

    アーキテクチャごとに設定を振り分ける 同じOSを使っている場合でも、アーキテクチャが異なっていると指定するオプションが違ってくるコマンドがある。コンパイラで指定するオプションなどがそれだ。そういった場合はOSごとに設定を振り分けるのではなくて、アーキテクチャごとに設定を振り分ける。 プロンプト1.1 gccでアーキテクチャオプションを表示 - FreeBSD-current on Core 2 Duo % gcc -march=[ここでタブキーを押す] athlon athlon-xp i486 k6-3 pentium-m pentium4 winchip2 athlon-4 athlon64 i586 k8 pentium-mmx pentium4m athlon-fx c3 i686 nocona pentium2 pentiumpro athlon-mp c3-2 k6 op

  • 【コラム】漢のzsh (22) もってけ泥棒! コピペで始めるzsh - リターンズ | エンタープライズ | マイコミジャーナル

    こいつを~/.zshrcにコピーだ 今回は、そのまま使えるコピペシリーズ第2弾をお送りする。連載の第10回目でそのまま~/.zshrcにコピーすれば使える設定ファイルを紹介したが、これが好評だった。とりあえず、読者の皆さんはコピペしてzshの世界を堪能したらしい。あれからいくらかの変更や設定追加を行ったので、その最新版を公開しよう。というわけで、持ってけ!! 野郎どもっ!!! リスト1.1 コピー&ペースト対応 ~/.zshrc ファイル - LInux/FreeBSD/Mac OS X 対応版 # users generic .zshrc file for zsh(1) ## Environment variable configuration # # LANG # export LANG=ja_JP.UTF-8 ## Default shell configuration # #

  • 【コラム】漢のzsh (20) コマンド補完設定 - cal/ncalコマンド編 | エンタープライズ | マイコミジャーナル

    今回もコマンド補完設定について述べるとしよう。これまでは1コマンドに対して1つの補完設定ファイルを作成してきた。今回は複数のコマンドに対して1つの補完設定ファイルを作成する方法について解説する。 cal/ncalコマンドの基 まず、calコマンドとncalコマンドについて説明する。calコマンドはプロンプト1.1のようにカレンダーを出力するためのコマンドで、ncalコマンドはプロンプト1.2のようにカレンダーを出力するコマンドだ。この2つのコマンドには、出力が縦方向か横方向かという違いがある。 プロンプト1.1 cal(1)コマンドでカレンダーを出力 % cal July 2007 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 3

  • 【コラム】漢のzsh (19) コマンド補完設定 - trafshowコマンド編 | エンタープライズ | マイコミジャーナル

    zshにはあらかじめコマンド補完の設定が用意されている。しかしサードパーティアプリケーションや、あまり使われていないコマンドに対しては補完設定が用意されていない。そのようなわけで、こういったコマンドの補完設定について紹介していこう。今回は、trafshowコマンドを取り上げる。 trafshowコマンド ここで紹介するtrafshowコマンドは、ネットワークを流れているパケットを監視するアプリケーションである。ターミナルで実行してtopコマンドのように流通状況を確認できる。ネットワークが重いときなどに、どのホストのどのアプリケーションが帯域を占領しているのかを簡単にチェックできる便利なコマンドだ。 このtrafshowコマンドには、オプションがいくつもある。その中で典型的な使い方というと、スーパーユーザが使う「trafshow -i ネットワークインタフェース名」だろう。それでは、この補完