タグ

bashに関するazuki_mihomihoのブックマーク (23)

  • /bin/sh と /bin/bash の違い - 双六工場日誌

    みなさん、shebang書いてますか! Shebangというのは、スクリプトの最初の一行目に書く、「#!/bin/sh」とか「#!/usr/bin/perl」とかそういうあれです。詳しくはWikipediaさん(シバン (Unix))に聞いてくださいまし。 Twitter見てると、「そもそもこれにshebangなんて名前がついてるの知らなかったよ」という発言も見る不憫な子ではあるのですが、そこに何が書いてあるかで実は動作が違うよってのが今日の題です。それで、はまっていたのを最近見て、まああまりここで引っかかる人はいないと思いつつ、この点を書いた情報を見ないのでまとめてみました。*1 今日取り上げるのは、bashがデフォルト設定になっているLinuxでの「#!/bin/sh」と「#!/bin/bash」のお話。確認はCentOS5, 6で行なっています。 さて、上記の環境の場合、「/bin

    /bin/sh と /bin/bash の違い - 双六工場日誌
  • Gitブランチ名を__git_ps1でbashプロンプトに表示 - 130単位

    Git 基礎最速マスター - 予定は未定Blog版 http://d.hatena.ne.jp/bleis-tift/20100307/1267941654 こちらでプロンプトにGitのブランチ名を表示させる方法を知りました。そこでさらに各OSで共通の表示を試みてみたので、そのメモです。 Bash-Completionのインストール 環境変数PS1の設定 上記の手順で、 こんな感じになります。 Bash-Completionのインストール no title Mac Mac OS X 10.6 Snow Leopard インストール $ sudo port install git-core +bash_completion .bashrc追記 if [ -f /opt/local/etc/bash_completion ]; then . /opt/local/etc/bash_comple

  • dotfilesをGitHubで管理,vimプラグインをNeoBundleで管理する方法メモ - c-bata web

    ドットファイルをGitHubで管理する 最近知ったのですが,.vimrcや.bashrc等のファイルのことをドットファイルというようです。 これらをGitHubで管理することでどのマシンでも同じ設定がすぐに使える!っていうのが流行っているらしいなので、早速取り入れてみる。 まずはGitHubのページから「Create new Repository」を選択。「dotfiles」という名前のリポジトリを作成。 この時,README.md等を作成するのところにチェックを入れると後でpushするときに面倒くさくなるので,リポジトリ名だけを指定してリポジトリ作成。 それが終わったら次はローカルにdotfilesディレクトリを作成して,GitHubで管理したいファイルを移動する。 $ cd $ mkdir dotfiles $ mv .vimrc dotfiles $ mv .gvimrc dotfi

    dotfilesをGitHubで管理,vimプラグインをNeoBundleで管理する方法メモ - c-bata web
  • naoya_itoの火を噴いたシェルtips - Togetterまとめ

    Naoya Ito @naoya_ito シェルでパスワード入力プロンプトでるじゃないですか。途中まで打って間違えたとするじゃないですか。Ctrl + u 打つとリセットできるの知ってた? 俺は知ってた 2014-04-07 19:40:06

    naoya_itoの火を噴いたシェルtips - Togetterまとめ
  • Linuxコマンドの便利な使い方等をまとめてみました【22日目】 | DevelopersIO

    最近AWSを利用する機会が増えてきており、OSもLinuxということで、sshでのサーバ接続が基となってきています。 そこで、よく使うLinuxコマンドとviエディタについて(一部便利な)使い方をまとめてみようとおもいます。 cdはカレントディレクトリの移動なのですが、作業中はよく同じディレクトリに移動したいことがよくあります。 そこで、aliasを設定することで簡単に『よく使うディレクトリまで移動する』ことができます。 まずはviで.bash_profileを開きます $ vi .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH

  • bashの便利な機能を使いこなそう(2/2)

    bashのカスタマイズ bashは、組み込みの「シェル変数」を使ってその動作をある程度変更できます。シェル変数の設定方法は、 のように、変数名に数値あるいは文字列を代入する形になります。 組み込み変数にどんなものがあるか、ざっと見てみましょう。 ヒストリ関係 ●HISTCMD 現在のコマンドのヒストリ番号。 ●HISTCONTROL ignorespace:スペースやタブで始まる行をヒストリに記録しない ignoredups:入力が最後のヒストリと一致する場合に記録しない ignoreboth:ignorespaceとignoredups両方を指定 指定なし:すべての入力をヒストリに記録する ●HISTFILE ヒストリファイル名。 例:HISTFILE=/home/username/.bash_history ●HISTFILESIZE ヒストリファイルに格納するヒストリの最大数。 ●H

    bashの便利な機能を使いこなそう(2/2)
  • Macのターミナルのプロンプトにgitブランチ名を表示して幸せになったある男の話

    先週あたりに小島さん主催の第10回Creators MeetUpにスピーカーとして参加したのですが、他の登壇者さんのセッションでMacのターミナルのプロンプトにgitランチ名が表示されているのを見て、そんなことが出来るのか!と衝撃を受けやり方を調べてみました。 えいや!って修正して、さあpushするかとなった段階で「あ、ブランチ間違えた…」っていうgitあるあるの話。 ブランチ名が表示されていればそんな凡ミスも防げるんじゃないかと。 ブランチ名が表示される幸せ その方はzshでやってたようですが、ぼくはbashでいきますね。 Mac OSX 10.8 Lionです。 git-prompt.shをホームディレクトリへ。gitをhomebrewで入れている場合です。それ以外の方は適宜ディレクトリを読み替えてくださいな。

    Macのターミナルのプロンプトにgitブランチ名を表示して幸せになったある男の話
  • 環境設定/etc/profile.d/ - torutkのブログ

    最近、Linuxに、/etc/profile.d/なるディレクトリのあることを知りました。中を見ると、vim.csh, vim.sh, kde.csh, kde.shといったファイルがあります。vimでは、alias vi=vimの設定が書かれており、各ユーザはログインすると自分の環境設定に何も記述していなくても、viと叩けばvimが起動されるようになっていたのです。 /etc/profile.d/vim.sh if [ -n "$BASH_VERSION" -o -n "$KSH_VERSION" -o -n "$ZSH_VERSION" ]; then [ -x /usr/bin/id ] || return [ `/usr/bin/id -u` -le 100 ] && return # for bash and zsh, only if no alias is already se

    環境設定/etc/profile.d/ - torutkのブログ
  • bash で git コマンドのブランチ名などを補完するには - Qiita

    git-completion.bash を導入する。 git/contrib/completion/git-completion.bash at master · git/git 導入方法 git/contrib/completion/git-completion.bash をダウンロードして適当な場所に配置(例えば ~/.git-completion.bash) ~/.bashrc に source ~/.git-completion.bash の一行を加える これだけ Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark the

    bash で git コマンドのブランチ名などを補完するには - Qiita
  • MacのターミナルでGitのブランチ名を表示する - アインシュタインの電話番号

    VimのステータスラインにGitのブランチ名を表示させる、という記事で以下の一文が。 当然、ターミナルのプロンプトには表示させてますよね? 今こそ!git の branch を vim のステータスラインに表示!!するとき!!! すみません、表示させてませんでしたッ…! WindowsでmsysGit使ってる時にはプロンプトにブランチ名が表示されてて、これ結構便利かもなーとは思ってたんだけど、そもそも自分はGitのブランチをまともに使えてないので、ありがたみがよくわかってなかった。でもこれからちゃんと使うためにも早めに表示しておいたほうが良さそう。上記の記事のようにVimでも表示させたいしね。というわけで、とりあえずMacのターミナルでGitのブランチ名を表示できるようにしておく。完成形はこうなる。 git-completion.bash 今回はこちらの記事を参考にさせてもらった。ちなみに

    MacのターミナルでGitのブランチ名を表示する - アインシュタインの電話番号
  • bashにて複数端末間でコマンド履歴(history)を共有する方法 (iandeth.)

    Tera Term 等の端末を複数同時に立ち上げて作業したり、screenにて複数の仮想端末を同時並行で操作する際、コマンド実行履歴が端末間で共有できなくて困る事が多々あります。「さっきのfindコマンドをもう一度... 引数どう書くんだっけなぁ... あ、確かコマンド履歴にあったはずだなぁ... ちっ、それはあっちの端末の履歴だったか」みたいな。zshには端末間のコマンド履歴を常に同期できる'SHARE_HISTORY' なるオプション(*1)があって素敵なのですが、同じことを bash で実現する方法を調べたのでご紹介。 (*1) zshの同機能について詳しくはITmedia記事 "豪傑の三種の神器【後編】" を参照の事 不具合) 通常設定のbashで困る事 1. 複数端末間でコマンド履歴の共有ができない 同時に立ち上げている端末間で履歴の共有ができなくて不便に感じることがある。 2.

  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • bash 入門

    ユーザーの入力をカーネルに伝えまたその逆を行う、いわば両者の橋渡しを行うプログラムをシェルといいます。ユーザーから見てカーネルを包んでいる貝殻(shell)のように見えることからそう名付けられました。 シェルには多くの種類がありますが、Linuxにおけるデファクトスタンダードになっているbashについてどんな機能があるかを見ていきます。 補完 まず知っておきたい基的な機能が補完です。コマンドプロンプトでTabキーを押すことで、コマンド名やファイル名を補完することが出来ます。 $ ls abc1 abc2 def $ cat a[Tab] $ cat abc 確定できる部分までが補完されました。ここからさらに2回Tabキーを叩くと候補が表示されます。 $ cat abc[Tab][Tab] abc1 abc2 リダイレクト・パイプ リダイレクトとパイプという機能を理解するにはプロセスがどの

  • ¥Ñ¥¹(PATH)¤Î³Îǧ¤ÈÀßÄêÊýË¡¤Ï¡© - Pocketstudio.jp Linux Wiki

    ¤½¤â¤½¤â¥Ñ¥¹(PATH)¤Ã¤Æ¡© † ¡¡¥Ñ¥¹(PATH)¤Ï±Ñ¸ì¤Ç¡Ø ·ÐÏ© ¡Ù¤È¤¤¤¦°ÕÌ£¤¬¤¢¤ê¤Þ¤¹¡£·ÐÏ©¤È¤¤¤¦¤è¤ê¤Ï¡¢¤à¤·¤í¡¢¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¥×¥í¥°¥é¥à¤Î¤¢¤ë¾ì½ê¤È¹Í¤¨¤¿Êý¤¬Îɤ¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£ ¡¡´Êñ¤Ë¡Ê³Ú¤Ë¡Ë¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë¡¢¥Ñ¥¹¤ÎÀßÄê¤ò¤¹¤ë»ö¤ò¡Ø ¥Ñ¥¹¤òÄ̤¹ ¡Ù¤È¸À¤¤¤Þ¤¹¡£ ¡¡¤¿¤È¤¨¤Ð /usr/local/pgsql/bin/psql ¤È¤¤¤¦¥³¥Þ¥ó¥É¤ò psql ¤È¤À¤±ÆþÎϤ·¤Æ¼Â¹Ô¤µ¤»¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç psql ¤È¤¤¤¦¥³¥Þ¥ó¥É¤¬¤¢¤ë¾ì½ê¤¬

  • [Bash]正規表現マッチした部分文字列を再利用する方法 · DQNEO日記

    Bashでは正規表現マッチを使ってマッチした部分文字列を再利用することができます。 つまり文字列の加工を自由自在にすることができます。 例:"foo_bar"から"foo"や"bar"を取り出したい [[ "foo_bar" =~ ^(*)_(*)$ ]] ここでマッチした部分文字列は、BASH_REMATCHという配列に格納されています。 # マッチした全体を参照したい場合 TOTAL=${BASH_REMATCH[0]} echo $TOTAL # => foo_bar # ()でマッチした部分文字列を取り出したい場合 LEFT=${BASH_REMATCH[1]} echo $LEFT # => foo シェルスクリプトで書くなら下記ような感じで。 #!/bin/bash if [[ "foo_bar" =~ ^(.+)_(.+)$ ]] ; then echo ${BASH_REM

    [Bash]正規表現マッチした部分文字列を再利用する方法 · DQNEO日記
  • [bash] コマンドの実行結果を変数として保存する方法: Akito's IT技術 メモ

    $()の括弧の中でコマンドを記述すれば,その結果を変数として取得できる. script$ cat cmd-str.sh #!/bin/bash val=$(pwd) echo "results of pwd = ${val}" 上記のスクリプトでは,pws コマンドの実行結果を変数 val に格納して,echo で出力している. 実行すると・・・ script$ bash cmd-str.sh results of pwd = /home/akito/script という結果になる. lsコマンドを利用すればファイルやディレクトリのリストを変数に格納できるし,grepした結果を格納することも可能

  • bashのキーバインド(キーボードショートカット) まとめ - readlineとbind、ついでにstty編 - うまいぼうぶろぐ

    復習がてらまとめてみた。今さら感たっぷりでたぶん100番煎じぐらいだけど。きっかけは単語単位でカーソルを移動させる(M-f,M-b)方法が知りたかっただけなんだけど。せっかくなのでどこで、どういう風にキーバインドが割り当てられているかを調べた。 versionはdebian4のbash 3.1.17。 readlineとbind(組み込みコマンド) man bashのreadlineとbindの項目参照。readlineはシェルの入力を処理するライブラリ。bashは組み込みのコマンドでreadlineの割り当て設定確認/設定変更が出来る。 端末ラインのキーバインド さて、さっそくbashのキーバインド…の前に、シェルとは別の端末のキーバインドもまとめておく。bashとは直接関係ないけど、端末をCLIの操作をキーバインドで行うという意味では、ほぼ同じなので。 有名なのはプロセスを割り込むC-

    bashのキーバインド(キーボードショートカット) まとめ - readlineとbind、ついでにstty編 - うまいぼうぶろぐ
  • bash 入門

    ここでは Linux の標準シェルである bash について, 個人的なメモを兼ね簡単な説明を行っている. なお,前提として読者は C シェルを多少は使ったことがあるものとしている. より詳しくは Cameron Newham & Bill Rosenblatt 著, QUIPU LLC / 遠藤 美代子 訳 「bash 入門」(アスキー出版) などを参考にしてもらいたい.

  • .bash_profileと.bashrcの違いが覚えられないあなたへの処方箋 · DQNEO日記

    なぜ、「.bash_profileと.bashrcの違い」をすぐ忘れてしまうのか? ずばり、 「どっちに書いても、実用上は対して変わらない」 からでしょう。 ちょこっと環境変数を定義する程度なら、どっちに書いても動くのです。 どっちに書いてもそれなりに動く → 違いがわからない → 忘れる これが魔の忘却ループです。 .bash_profileと.bashrcの違いを絶対に忘れない方法 ではどうすればよいか? 「違いを自分の目ではっきりと見ること」 これに尽きます。 これから、一緒に手を動かして簡単な実験をしてみましょう。 5分ほどで終ります。 準備はいいですか? ① .bash_profileにechoを書いてみる .bash_profileの最下行に1行追加します。 echo "\(うぇるかむようこそプロファイル)/" ② .bashrcにechoを書いてみる .bashrcの最下行に

    .bash_profileと.bashrcの違いが覚えられないあなたへの処方箋 · DQNEO日記
  • .bash_profileで環境変数を設定する。

    Linuxユーザの立場から、役立つ情報や困ったときの解決方法を分かりやすく、かつ簡潔に記事にまとめています。主に、Ubuntu 8.04(→9.04)やCentOS 5.2(→5.3)で確認したことですが、他のディストリビューションでも応用できると思います。内容は(1)設定ファイルの書き方(2)役立つソフトウェア紹介やインストール方法(3)便利なコマンドの使い方や活用例(4)困ったときの解決方法です。このページの末尾にキーワード別で記事を分類してあります。また、真上の「ブログ検索」フォームからブログ内の記事を検索できます。 バッシュシェルを使っている場合、ホームディレクトリに .bashrc .bash_profile <----(誤)Ubuntu 8.04では.profileを優先して読み込みます。 というファイルがある場合、シェルはそのファイルを読み込んで設定を登録します。.bashr