質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Q&A

解決済

1回答

2597閲覧

バッチファイルでどの言語を使うのがよいか

Fushihara

総合スコア52

bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

0グッド

0クリップ

投稿2017/07/27 09:07

バッチファイルという言い方は多分間違っていると思うのですが、なんと読んだらいいのかわかりませんでした。

例えば、プロジェクトをxcodeBuildを使ってビルドして、その後deploygateに上げて、itunesConnectのバリデーションを通して、
git stausの結果をどこどこのログに書き出して・・・

のような、コマンドを叩いて、結果に応じて色々な処理をするバッチ処理で
今まではmacでbash、winでbatを使っていたのですが
ちょっと文章を正規表現でマッチさせたり、処理を共通化したりループさせようとすると、構文が複雑になってしまいます。

そこで、もっと高級なスクリプト言語を使ってみようと思うのですが、上記のようなbash/batの置き換えにはどの言語がよいでしょうか。

少し試したのですが

  • nodejs

ディレクトリを作るとか、ファイルを読み込むとか、まず最初に出てくる情報の大半が非同期で
わざわざ同期させる時はどうするか?を探す必要があるのがストレス。
外部モジュールを使うと、jsファイルと同じディレクトリにnode_modulesフォルダやpackage-lock.jsonファイルが作られてしまい、はっきり言って邪魔。
他の言語では、インストールしたモジュールはユーザーごとの固有のフォルダに作られると思う。
言語自体は活発でモダンな書き方が出来るのはいいが、そもそもバッチファイル的に使うのがおかしいかも。

  • ruby

バッククオートで囲うだけでexec出来るのは便利 (xcodebuild -xxx のように)だが、正直言語自体のパワー不足感。
各種ランキングでも上位とは言えないし、マイナーな言語という点が怖い。def〜endの構文も気になる。
とはいえ実用面で言えば、そもそも凝った事をする前提ではないし、書き方がキモいのも慣れの問題で実用的には問題無いかもしれない

  • python

いまだに2.xと3.xで悩んでいる波に巻き込まれたくないし、macで標準で入っているのが2.7でこれを3.xに差し替えるのもシステムで使ってそうで怖い。
python自体は人気ナンバーワンだけど、使いこなしてる人はどうやってこの問題を解消しているのか気になる。

どれも自分的に一長一短で、どれを使えばいいか決め兼ねています。
bat/shをマスターした方がいい とか、他の言語がいいとか、情報ありましたら教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

このような、「他のシステムをつなぐのに使う言語」のことは、グルー言語と呼ばれます。

よく使われるものとして、上に出たRubyやPython以外に、シェルスクリプトや(Windowsなら)PowerShell、あとはPerlもあります。

基本的に、グルー言語はあくまで「つなぎ」なので、書きやすいもの・環境構築の手間がないもので書くのが適切かと思います。

投稿2017/07/27 09:12

maisumakun

総合スコア145121

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WoodenHamlet

2017/07/31 06:35

いままでスクリプト言語と思っていましたが、そういう言葉もあるのですね、勉強になります。 グルーというのが直感的にどんな位置づけを表すのかわかりやすくていいですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問