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

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

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

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

fish

fish(friendly interactive shell)は、Unix系OSのシェルの一つです。無設定で多くの機能を利用することが可能。カラフルな表示で見やすく、TAB補完にも優れています。

terminal

Terminalは、Apple社のmacOSに標準で付属しているUNIX端末エミュレータ。UNIXコマンドによってMacの操作および設定を行うことができます。

シェル

シェル(shell)はUnix や Linux 系のOSで使用されるコマンドインタプリタを指します。

受付中

bashの記法をfishでつかえるようにしたい。

sequelanonymous
sequelanonymous

総合スコア123

bash

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

fish

fish(friendly interactive shell)は、Unix系OSのシェルの一つです。無設定で多くの機能を利用することが可能。カラフルな表示で見やすく、TAB補完にも優れています。

terminal

Terminalは、Apple社のmacOSに標準で付属しているUNIX端末エミュレータ。UNIXコマンドによってMacの操作および設定を行うことができます。

シェル

シェル(shell)はUnix や Linux 系のOSで使用されるコマンドインタプリタを指します。

1回答

0グッド

1クリップ

595閲覧

投稿2018/12/02 10:42

タイトルに有るとおり通りです。

シンタックスの差分をなくしたいと思っています。つまり、下記のbashのコマンドがfishでうってもシンタックスエラーがでずに使えるようにしたいです。そのためには、どのファイルにどう設定すればよいのでしょうか?

以下の様な場合、bashに切り替えて確認しています。

【具体例】

bash

1TEST=`echo -n ${ID}:${NAME}`

ドキュメントがbashの記法で共有されているので、fishで作業しているときに以下のように書き直すのがめんどくさいので都度、bashに切り替えて上記の記法でコマンドをつかっています。

fish

1TEST=`echo -n {$ID}:{$NAME}`

*補足
ざっくり、以下のような設定をしてfishをデフォルトのシェルとして使っています。
https://blog.daisukekonishi.com/post/change-fish-shell/

一つの方向として調べていますが、下記は、どうすればよいかわかりません。

下記、設定ファイルに記述していく方法で互換するように記述していく方法。

~/.config/fish/config.fishを用意して、ここに記述すると反映してくれる。

aliasなんかのファイルを分けておいて、config.fishにPATHを書くと読み込んでくれるらしい

. ~/.config/fish/env.fish . ~/.config/fish/aliases.fish . ~/.config/fish/Keybinds.fish

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

0

fish上でbash文法を使用できるようにするbassというプラグインがあります。もしかしたらこれを使用することで解決できるかもしれません(が、おそらく完全ではないと思います)。

補足部分についてですが、~/.config/fish/config.fishにfishの文法で記述することで、PATHや環境変数の設定ができるということだと思われます。ファイルを分けておいてsourceなどで個別に読み込ませることも可能です(ちなみに、現在のfishではalias hoge='fuga'export HOGE=fugaといった書き方ができるようになっています)。

投稿2019/01/23 13:44

編集2019/01/24 00:11
JiaYue

総合スコア12

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
86.12%

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

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

質問する

関連した質問

同じタグがついた質問を見る

bash

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

fish

fish(friendly interactive shell)は、Unix系OSのシェルの一つです。無設定で多くの機能を利用することが可能。カラフルな表示で見やすく、TAB補完にも優れています。

terminal

Terminalは、Apple社のmacOSに標準で付属しているUNIX端末エミュレータ。UNIXコマンドによってMacの操作および設定を行うことができます。

シェル

シェル(shell)はUnix や Linux 系のOSで使用されるコマンドインタプリタを指します。