タグ

Shellに関するyy0086snのブックマーク (3)

  • /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 の違い - 双六工場日誌
  • [J] シェルスクリプトで実行ファイルのディレクトリを参照する方法 - Jamz (Tech)

    最近「コマンド化」「自動化」に目覚め、シェルスクリプトにハマっている。 第一歩としてはコマンド化なんだけど、これができると cron などで定期実行できるようになるから結果、これが自動化につながる。 っで、今回はこれまでにプログラムしたスクリプトを汎用化したいと思い、試行錯誤している。 シェルスクリプトを実行する際、以下のようにいくつかの参照方法 / 実行方法がある。 /path/to/shell_script (/ ルートから絶対パスで指定) ./path/to/shell_script (相対パスで指定) ./shell_script (実行ファイルがあるディレクトリに移動して実行) この前提として、実行したファイルと同一階層に設定ファイルや共通 (共有) 化した外部ファイルなどを配置して汎用化を図っているんだけど、こうした外部ファイルの参照方法が今回の課題だった。 PHP でいうとこ

  • 【FreeBSD】シェルスクリプトでパス文字列からファイル名/ディレクトリ名/拡張子を抽出する

    対象プラットフォーム: FreeBSD 8.x (下記手順を2014/05/01にFreeBSD 8.4-RELEASEで確認済み) はじめに シェルスクリプトを書いていると、ファイル名を含むパス文字列から、ファイル名や、ディレクトリ名、拡張子の部分のみを抽出したいケースによく遭遇します。 このページでは、これらの文字列の抽出方法について説明します。 早速サンプルのシェルスクリプト ファイル名を含むパス文字列から、ファイル名や、ディレクトリ名、拡張子の部分のみを抽出するのは、かなり容易です。 早速サンプルをご紹介します。 #!/bin/sh test_path="/usr/local/etc/apache/httpd.conf" string_filename=${test_path##*/} string_filename_without_extension=${string_filen

  • 1