タグ

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

  • Windows OS上で超気軽にbash環境を楽しめる「clink」

    設定はbash流儀でテキストファイルに記述 clinkはスウェーデン在住でEA Digital Illusions CE(Electronic Artsの子会社。Battlefieldシリーズのデベロッパーとして有名)在住のMartin Ridgers(マーティン・ロジャース)氏がMITライセンスで公開しているオープンソースのプログラムである(図03)。 執筆時点でバージョン0.3.1が公開されているが、インストーラー版の導入は画面の指示に従って導入完了。そのままコマンドプロンプトを起動すれば利用可能になるが、ZIP版の場合は同こんされたバッチフィルを実行しなければならない。また、実行時にはMicrosoft Visual C++ 2010再頒布可能パッケージの導入が必要となる。未インストールの環境ではお使いのWindows OSに合わせて、32ビット版か64ビット版を導入しておかなければ

    Windows OS上で超気軽にbash環境を楽しめる「clink」
  • シェルスクリプトでパイプからの入力とキーボード入力を区別する

    B! 4 0 0 0 シェルスクリプトにパイプで入力を与えて、その後、キーボード入力を使って 実行することを選択したりしたしする方法について。 標準入力があるかどうか判断して実行するスクリプト 上のスクリプトで入力を受け取った後にキー入力をしたい 解決法 標準入力があるかどうか判断して実行するスクリプト 標準入力がある場合はその内容を、そうでない場合は適当に与えられた ファイルの内容を表示するスクリプトを考えます。 a.sh 1 2 3 4 5 6 7 8 9 10 11 12 #!/usr/bin/env bash #if [ ! -p /dev/sdtin ];then if [ -t 0 ];then while read line;do echo $line done < file else while read line;do echo $line done fi こんな感じ。t

    シェルスクリプトでパイプからの入力とキーボード入力を区別する
  • 引数を処理する | UNIX & Linux コマンド・シェルスクリプト リファレンス

    引数を処理する 引数とは? 引数 (ひきすう) とはコマンド (シェルスクリプト) 実行時に、コマンドラインから渡される値のことである。 引数は実行時にプログラム内で参照され、シェルスクリプトの実行結果 (動作) に影響を与える。引数はパラメータと呼ばれることもある。 → コマンド名に続けて引数としてコマンドに渡したい値のリストを指定する。 引数はコマンド名に続けてスペース区切りで指定する。引数として指定可能な値の数は各コマンドにより異なる。 【参考】 引数とオプション コマンド実行時に指定する値には引数とオプションがある。引数は実行に使用されるファイル名や出力されるメッセージなどを指定するのに使用される。 一方、オプションは -f などのように - (ハイフン) とアルファベット1文字で表記され、主にコマンドの振る舞い方を指定する目的で使用されるものである。 また、オプションは -a -

    引数を処理する | UNIX & Linux コマンド・シェルスクリプト リファレンス
  • GNU Bourne-Again Shell を便利に使う - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    GNU Bourne-Again Shell を便利に使う - Qiita
  • bash によるオプション解析 - Qiita

    すこし記事が長いため、簡単なアウトラインを書いておきます。要点だけ掴みたい場合は、最終項の「まとめ」を読むのがいいかもしれません。 コマンドライン引数の一般的な解析手法 それぞれの特徴 〜 getopt と getopts の違い getopts(メリット・デメリット) getopt(メリット・デメリット) 自前で解析しちゃう(唯一のデメリット) まとめ ============================= コマンドライン引数を処理する一般的な手法として、 getopts getopt shift などで自力で解析 といった具合に、上から順に考えつくかと思います。getopt(3) は UNIX において、コマンドの引数を処理する一般的な C 言語のライブラリ関数です。それを用いて実装されたコマンドが getopt(1) です。Bourne シェル系だと内部関数になりますが、同系統の

    bash によるオプション解析 - Qiita
  • シェルスクリプトでプロセスを監視し自動実行&自動kill

    追記:プロセスの監視&自動復旧(簡易版) 今ある検索エンジンのデバッグを行っていますが、事情により短期間ですがクローズドな環境で運用されることになりました。構成は大きく分けてエンジンモジュールサーバ、クエリーモジュールサーバの二つのサーバからなっています。 デバッグはまだ途中なので、運用中にクエリーサーバorエンジンサーバのどちらか、もしくは両方が落ちる可能性もあります。落ちた場合は、手動で起動しなおすことになっていますが、せっかくなので自動化しよう。と、考えました。最初はcronデーモンを用いようと思いましたが、プロセスの監視(dead or alive)の仕方が分からず(調べきれず)、シェルスクリプトを用いることにしました(とは言うもののシェルスクリプトを使うのも初めてでした)。 クエリーサーバ&エンジンサーバのプロセスを一定の間隔で監視し、一方が何らかの原因で落ちた際は、再び二つのプ

    シェルスクリプトでプロセスを監視し自動実行&自動kill
  • Linuxの使い方 - シェルスクリプトの作り方(3/8)

    6. シェルスクリプトの作り方(3/8) 6.4 位置パラメータ(引数の取り扱い) UNIX系OSのコマンドは引数としてオプションやパス名を指定できますが、シェルスクリプトでも同じように引数を指定できます。引数で指定した値はシェルスクリプト中では位置パラメータとして受け取ります。位置パラメータは前述した通り、1〜nの数字で表し、$n又は${n}の形式で値を参照します。 位置パラメータと関連する特殊パラメータには次のものがあります。 【表6-9】特殊パラメータ一覧 変数内容

  • Smile. Tomorrow will be worse. - AABBDD

    ...

  • シェルスクリプト(sh/bash/zsh)で変数から変数へ代入する方法について - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    シェルスクリプト(sh/bash/zsh)で変数から変数へ代入する方法について - Qiita
  • Linuxの使い方 - シェルスクリプトの作り方(1/8)

    6. シェルスクリプトの作り方(1/8) 6.1 概要 UNIX系OSでは実行したいコマンドをファイルに記述しておき、コマンド名として、そのファイルを指定することにより、ファイル中のコマンドを実行することが出来ます。このコマンドを記述したファイルをシェルスクリプトと呼んでいます。シェルスクリプトに記述するコマンドの形式は、ターミナル・エミュレータ上で実行するときとまったく同じですし、ファイルは普通のテキストファイルです。また、コンパイルのような前処理も必要ありません。 ここでは、次の内容について説明します。 実行方法とよく使うコマンド シェル変数と文字列演算 位置パラメータ(引数の取り扱い) 文字列のエスケープ 四則演算 制御演算 関数 【図6-1】例題のシェルスクリプトの実行環境 コマンドサーチパスの設定をしているため、コマンド名としてファイル名を指定すれば実行できます 以降の説明での例

  • read について知っておくと while read で役に立つときが来る…かも - Qiita

    親の環境に影響を与えないためにサブシェルで実行している部分があります。 read に複数の引数を与える read に複数の引数を与えると複数の変数に同時に値を代入可能。区切りは IFS によって変化する。 $ echo 1 2 3 | (read v1 v2 v3; declare -p ${!v*}) # `${!v*}' は前方一致展開です declare -- v1="1" declare -- v2="2" declare -- v3="3"

    read について知っておくと while read で役に立つときが来る…かも - Qiita
  • BASHでの変数について - ファイヤープロジェクト

    BASHスクリプトにおける変数の取扱について説明する. 値の代入と参照 クォート 環境変数 パラメータ変数 配列 宣言 局所変数 値の代入と参照変数は宣言せずに使用できる.以下の文では,変数xに文字列hogeを代入している. x=hoge このとき,等号の両側にスペースをいれてはいけない.この変数xの内容を参照するには,変数の前に$を付ける. echo $x 変数の値は文字列型として扱われる.そして数値の操作をするときに数値文字列を数値に変換する.また,大文字と小文字は区別される.変数の開放にはunsetを使用する. $ x=100 $ echo $x 100 $ unset x $ echo $x クォートパラメータは空白,タブ,改行コードで区切られる.変数にこれらの値を代入するには,その値をダブルクォーテーションで囲う. x=”hoge foo” $変数名をダブルクォーテーションで囲う

  • bash 環境変数とシェル変数 webzoit.net

    環境変数とシェル変数とは UNIX/Linux及びシェルに限らず、他OS環境でも環境変数は利用されますが、シェル(bash)には環境変数の他にシェル変数があり、その環境変数とシェル変数には組み込み環境変数と組み込みshell変数、更に変数と特殊変数があります。 環境変数、シェル変数と言えば、一般には組み込み環境変数と組み込みshell変数を指しますが、他方、これらはユーザー定義ができるので、組み込み変数とはユーザー定義変数ではない環境変数やshell変数を指します。 環境変数とシェル変数のスコープ 尚、組み込み変数は、ログアウト後、再ログインしても常に利用できますが、ユーザー定義の環境変数やshell変数でコマンドラインから設定した変数については、有効な設定ファイルで設定しない限り、ログイン中のみ有効です(再ログイン時には存在しません)。 scriptやshell関数において設定された環境

    bash 環境変数とシェル変数 webzoit.net
  • [bash] /etc/profileと/etc/bashrcの違いは?どう使い分けるべきか? · DQNEO日記

    /etc/profile ユーザがログインしたときに実行されます。 したがって、ログインシェル用の環境変数の設定などをしたい場合は、こちらに記述します。 /etc/bashrc シェルスクリプトを実行するときなどに使われます。 ログイン以外のシェル用途で使いたい場合は、こちらを使います。

  • シェルスクリプト入門 [演算・比較]

    乗算の演算子は「*」ですが、UNIXでは「*」はワイルドカードという特別な意味がありますので、エスケープ文字「\」を使用して「\*」と書きます。また、演算子の前後のスペースは省略できませんので注意してください。以下は四則演算のサンプルスクリプトです。 expr_test.sh #!/bin/sh a=`expr 5 + 3` b=`expr 5 - 3` ab=`expr $a + $b` c=`expr 5 \* 3` d=`expr 5 / 3` e=`expr 5 % 3` echo "a=$a" echo "b=$b" echo "ab=$ab" echo "c=$c" echo "d=$d" echo "e=$e"

  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • bash 入門

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

  • forとseqで連番ファイル操作 - Qiita

    $ for i in `seq -w 1 31`;do touch test.2013.07.$i.txt;done $ ll total 0 -rw-r--r-- 1 okisanjp staff 0 7 13 07:52 test.2013.07.01.txt -rw-r--r-- 1 okisanjp staff 0 7 13 07:52 test.2013.07.02.txt -rw-r--r-- 1 okisanjp staff 0 7 13 07:52 test.2013.07.03.txt -rw-r--r-- 1 okisanjp staff 0 7 13 07:52 test.2013.07.04.txt -rw-r--r-- 1 okisanjp staff 0 7 13 07:52 test.2013.07.05.txt -rw-r--r-- 1 okisanjp s

    forとseqで連番ファイル操作 - Qiita
  • 全ては時の中に… : 【Linux】bashで指定したディレクトリ内のファイルを取得する

    2009/4/1522:0 【Linux】bashで指定したディレクトリ内のファイルを取得する シェルスクリプト(bash)を使って指定したディレクトリのファイルを1つずつ処理する方法について説明します。 指定したディレクトリからファイルを1つずつ取得するため、繰り返し処理が必要になります。bashで1つずつファイルを取得するには、「for...in」ステートメントを利用します。 (for...inステートメントは、繰り返し処理を実装する場合に利用します) 繰り返し条件の構文は、以下の通りです。 for 変数名 in "取得条件" do done 取得条件に合致するファイルパスを変数名に格納します。 以下、サンプル。 《事前準備》 1.テキストエディタを開く。 2.以下のコードを入力する。 3.ファイルを保存する。 ファイル名:test.sh ※拡張子は、「.sh」にして下さい。 ディレク