シェルスクリプトの中から、実行したスクリプトのあるディレクトリを必要とする場面はちょいちょいある。 たとえば、スクリプトの中で相対パスを使って別のファイルを読み込むような処理が典型的だと思う。 その場合、スクリプトを実行したときのカレントディレクトリを起点として相対パスを処理してしまうと上手くいかない。 代わりに、スクリプトのあるディレクトリを把握した上で、そこを起点に相対パスを処理する必要がある。 今回は、それを実現する方法についてメモしておく。 使った環境は次のとおり。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.15.7 BuildVersion: 19H15 $ bash --version GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin19) Copyrig
この記事はScala Advent Calendar 2018の20日目です。 ブログに初投稿します、エンジニアの門脇(@blac_k_ey)です。 広告運用周りの開発を担当しています。 最近、自分の中でAmmoniteが熱いのでこの度ブログを書いてみることにしました。 今回はIntelliJ IDEAでAmmoniteを使ったScalaスクリプトの開発環境を構築する方法をお伝えします。 Ammoniteとは? https://ammonite.io/ammonite.io Ammoniteは、lihaoyiさんが開発した高機能なScalaREPLおよび、Scalaスクリプトの実行環境です。 なぜScalaでスクリプトを書くのか? これは自身の所感なのですが、以下の利点が上げられます。 書き慣れたScalaでスクリプトを書ける Scala,Javaの資産が使える 型があるぶん補完が効く、コ
id:funnelbitとカラオケハッカソン 皆様、あけましておめでとうございます。 今年も、よろしくお願いしまScala。 Scalaは便利ですよ Scalaという言語は非常に便利なので、コマンドラインのツールを実装する場合でももちろん活用できます。 よく利用するのは例えばpicture-showというツールで、これはスライドを作るためのツールです。 また、giter8はsbtなどのビルドツールを利用したプロジェクトのテンプレートを作るツールです。 そもそも、ScalaはJavaのライブラリを利用することができるので利用できるシーンは広そうですね。 そんなわけでScalaでコマンドラインのツールの実装を行おう!と思った際に、どうするべきでしょうか。 sbt使ってjarに固める sbtのタスクを作る 適切なツールを使う←せいかい! まあ、面倒なのでサクッと conscriptを利用します。
Ammonite lets you use the Scala language for scripting purposes: in the REPL or as scripts. A Modernized Scala REPL. With syntax highlighting, multi-line editing, the ability to load maven artifacts directly in the REPL, and many other quality-of-life improvements missing in the default Scala REPL. Lightweight Programming in Scala. Create scripts that you can run easily from the command line, with
NOTE: Ammonite is now deprecated. For Scala scripting functionality, please see the scripting functionality present in the Mill build tool (https://mill-build.org/mill/scalalib/intro.html#_single_file_scripts) For Scala REPL functionality, most of Ammonite's REPL features (Ctrl-C handling, pretty-printed output, dynamically importing libraries, etc.) has been ported to the upstream Scala REPL 3.8.
モチベーション 先日、TypeScriptとPython向けに AWS Cloud Development Kit がGAになりました。 aws.amazon.com 現在GAではないのですが、JavaもこのAWS CDKの対象言語となっています。 じゃあ、JavaでできるならScalaでもできるよね?(決まり文句) Scalaでインフラコードを書けるのは嬉しそう。 というわけでScalaからAWS CDKを叩けるか試してみました。 セットアップ AWS CDKのインストール npm install -g aws-cdk Ammoniteのインストール ammonite.io 今回はScalaスクリプトを使ってAWS CDKのAPIを叩いてみます。 以下は執筆時の最新版をインストールしています。 sudo sh -c '(echo "#!/usr/bin/env sh" && curl -
はじめに Kotlinをコマンドラインでコンパイルして動かす コンパイラのダウンロード GitHub からダウンロードしてインストールする方法 SDKMAN!を使う方法 Homebrewを使う方法 MacPortsを使う方法 はじめてのKotlinアプリケーション ライブラリをコンパイルする REPLを使って実行する コマンドラインでスクリプト言語のように動かす 小鳥(Kotlin) はじめに これは以下のKotlinのチュートリアルページのざっくり日本語訳です。ところどころ意訳しています。 kotlinlang.org Kotlinをコマンドラインでコンパイルして動かす このチュートリアルではコマンドラインコンパイラでKotlinをコンパイルしてHello Worldをしてみます。 コンパイラのダウンロード コンパイラは GitHubのReleasesページ でダウンロードできます。この
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く