物理学者(ポスドク)による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)
シェルスクリプトって1行目に
#!/bin/sh
と書くものだと勝手に思ってたけど、最近自分が書いているシェルスクリプトを見てみると1行目には何も書いてない・・・・
それどころか、今日出たエラーでは1行目に上の呪文とは関係ない#から始まるコメントを入れてしまったせいで Command not found. とか出てきた・・・
そこでシェルスクリプトの1行目の意味を調べてみた
シェルスクリプトの1行目で"#!"が指定されている場合は特別な意味を持ち、
指定したシェルやプログラムで動作させることを意味します。
一般的には、以下の様な指定が使われます。
#!/bin/sh Borne shellでスクリプトを処理
#!/bin/csh C shellでスクリプトを処理
#!/usr/bin/perl perlでスクリプトを処理
尚、この指定が無い場合、シェルスクリプトはカレントのシェルで処理します。
この為、カレントシェルがBorneシェルで、先頭に"#!/bin/csh"が記述されて
いないCシェルスクリプトを起動すると構文エラーとなる可能性があります。
指定したシェルやプログラムで動作させることを意味します。
一般的には、以下の様な指定が使われます。
#!/bin/sh Borne shellでスクリプトを処理
#!/bin/csh C shellでスクリプトを処理
#!/usr/bin/perl perlでスクリプトを処理
尚、この指定が無い場合、シェルスクリプトはカレントのシェルで処理します。
この為、カレントシェルがBorneシェルで、先頭に"#!/bin/csh"が記述されて
いないCシェルスクリプトを起動すると構文エラーとなる可能性があります。
シバン(Shebang)というらしい
■ 参考
<シェルスクリプトを覚えよう!>
shの場合は上のようにすれば良い
が、pythonとかrubyとかだと置き場所が/bin以下でないことがある(らしい)
そこで次のような書き方をして、置き場所を明示的に示さない方法もあるらしい
#!/usr/bin/env python
■ 参考
シェルなどのインタプリタを起動するための「#!」。shebang。
時間ができたらそのうち読んで勉強する
サンプルスクリプト集
PR
プロフィール
HN:coffee
職業:物理屋(自称)
趣味:映画鑑賞、登山
出身:大阪府の南の田舎
自己紹介:
import MyProfile
import coffee_pote from TWITTER
import amazonのほしい物リスト from WISH_LIST
print "先月子供が産まれました!"
# 最終更新 2022/10/25
職業:物理屋
趣味:映画鑑賞、登山
出身:大阪府の南の田舎
自己紹介:
import MyProfile
import coffee_pote from TWITTER
import amazonのほしい物リスト from WISH_LIST
print "先月子供が産まれました!"
# 最終更新 2022/10/25
カテゴリー
ブログ内検索
リンク
相互リンク募集中です
(Twitterにてお知らせください)
Demo scripts for gnuplot version 5 (gnuplotのさまざまなデモ画像と作り方がまとめられている、眺めているだけでできるようになった気分になれる)
gnuplotスクリプトの解説 (米澤進吾さんの個人ページ、gnuplotと言えばこのかた)
gnuplot のページ (Takeno Lab、うちのブログがリンクされていたのでリンク返し)
Twitterから映画の評価が分かる & 映画の鑑賞記録が残せる coco (映画の感想をまとめられるサイト、いつもお世話になっています)
Astronomy Picture of the Day Archive (天文や宇宙関連の最新の話題について画像とともにNASAが説明しているページ)
今日のほしぞら (任意の時刻の空で見える星を表示してくれる、国立天文台が管理している)
GNUPLOTとアニメーション (応用の項目の「見せてあげよう!ラピュタの雷を!!」あたりからすごすぎる)
読書メーター (読んだ本をリストできる便利なサイト)
flickr難民の写真置き場 (20XX年、flickrは有料化の炎に包まれた。あらゆるflickr無料ユーザーは絶滅したかに見えた。 しかし、tumblr移住民は死に絶えてはいなかった。)
教授でもできるMac OS X へのLaTeX, X11, gccのインストレーションと環境設定 (阪大の山中卓さんのwebページ、タイトルにセンスが溢れている、内容は超充実してる、特にTeX関連、学振DCとかPDの申請書類作成時にはお世話になっております)
英語論文執筆用の例文検索サービス (とんでもないものを見つけてしまった・・・・ arXivに収録されている 811,761報の 英語論文から,例文を検索するための検索エンジン)
Demo scripts for gnuplot version 5 (gnuplotのさまざまなデモ画像と作り方がまとめられている、眺めているだけでできるようになった気分になれる)
gnuplotスクリプトの解説 (米澤進吾さんの個人ページ、gnuplotと言えばこのかた)
gnuplot のページ (Takeno Lab、うちのブログがリンクされていたのでリンク返し)
Twitterから映画の評価が分かる & 映画の鑑賞記録が残せる coco (映画の感想をまとめられるサイト、いつもお世話になっています)
Astronomy Picture of the Day Archive (天文や宇宙関連の最新の話題について画像とともにNASAが説明しているページ)
今日のほしぞら (任意の時刻の空で見える星を表示してくれる、国立天文台が管理している)
GNUPLOTとアニメーション (応用の項目の「見せてあげよう!ラピュタの雷を!!」あたりからすごすぎる)
読書メーター (読んだ本をリストできる便利なサイト)
flickr難民の写真置き場 (20XX年、flickrは有料化の炎に包まれた。あらゆるflickr無料ユーザーは絶滅したかに見えた。 しかし、tumblr移住民は死に絶えてはいなかった。)
教授でもできるMac OS X へのLaTeX, X11, gccのインストレーションと環境設定 (阪大の山中卓さんのwebページ、タイトルにセンスが溢れている、内容は超充実してる、特にTeX関連、学振DCとかPDの申請書類作成時にはお世話になっております)
英語論文執筆用の例文検索サービス (とんでもないものを見つけてしまった・・・・ arXivに収録されている 811,761報の 英語論文から,例文を検索するための検索エンジン)
最新記事
(11/20)
(03/05)
(02/29)
(02/21)
(02/21)
(02/21)
(02/21)
(01/13)
(01/05)
(01/05)