ご注意ください

  • 当ブログのコメントやトラックバックに、アカウントハックサイトや、そのようなサイトへリダイレクト(転送)される可能性が高いサイトへのリンクが時々貼られているようです。
    そのようなサイトへのリンクが貼られたコメント・トラックバックは、見つけ次第削除・禁止ワード登録していますが、今後も危険なサイトへのリンクが貼られる可能性がありますので、安易にリンク先へ飛ばないよう充分ご注意ください。

オンラインゲーム関連

著作権表示

  • 当ブログに記載されている
    会社名・製品名・システム名などは、
    各社の登録商標、もしくは商標です。

    当ブログ上の文章・写真・画像の
    無断転載、無断転用、直リンクなどは
    行わないでください。

    (C) 1998-2016 Vertex.
    (C) 2002-2016 SQUARE ENIX CO., LTD.
    (C) CAPCOM CO., LTD. 2007, 2016

    All Rights Reserved.
無料ブログはココログ

« ワイパー交換 | トップページ | 新しいPCを組んでみた »

kshからbashへ

お仕事の話。

ある理由から、今までkshで動かしていたシェルスクリプトをbashで動かすことになった。

どちらもBシェル系なので、さほど大きな違いはなく、ほぼそのままで動くことには動くのですが・・・一部書き換えないといけない部分があったり。

備忘録を兼ねて、メモメモ。

まずはお約束な部分で、1行目。

#!/bin/ksh

となっているところを、

#!/bin/bash

に書き換える。こんなこと忘れる訳がない!と言いたいところですが、大量のシェルスクリプトを手動で書き換えていく場合に、よく忘れる部分(笑)


次に、改行コード。echoコマンドなどの中で改行を入れるために「\n」を入れていることがありますが、bashはこれを文字として出力してしまうので、書き換えてあげないといけない。

例えば、

echo "\nエラー発生!\n"

という行があったとすると、

echo $'\nエラー発生!\n'

と書き換えてあげることで、bashでも改行コードとして認識してくれる。

とりあえず、そんな感じ。

« ワイパー交換 | トップページ | 新しいPCを組んでみた »

コメント

kshell からBashへの書き換えで その他にもき換えてあげないといけないことを教えてください。
よろしくお願いします。

>snowmanmsさん
はじめまして。こんにちは。
今のところ、何度かksh→bashの書き換えを経験しましたが、この記事で書いたこと以外の書き換えが必要な場面には出くわしたことがありませんでした。
以前どこかで「書式指定変数はbashで使えない」と見かけたような気がしますが、書式指定変数(typeset)は使ったことがないので、こちらに関してはわかりません。
お役に立てそうになくて、すみません。
※ただしkshもbashも、バージョンにより動作が異なる可能性があります。

9年前の記事ですが、参考にさせていただきました。
「さほど大きな違いはなく、ほぼそのままで動くことには動くのですが」とのことで、安心しました。
ただ、違いがあるのは事実のようですね。質問なのですが、kshとbashの差異というのは、どんな文書、情報から得ることができるのでしょうか? それともやはり現場経験でしょうか?

>ありよしさん
はじめまして。こんにちは。
当時参考にしていたサイトが既に存在しなかったりで、参考ページとしてご紹介できるものが無くて申し訳ないのですが、自分は試行錯誤して経験を積むことが多かったです。
テスト環境で「とりあえず動かしてみる」→「動かないor動きがおかしい理由をひとつずつ追いかける」ということを、よくやっていました。
そんな訳で、ご質問に対する私からの回答としては「現場経験」になりますね。

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/189342/42376838

この記事へのトラックバック一覧です: kshからbashへ:

« ワイパー交換 | トップページ | 新しいPCを組んでみた »

フォト
2017年5月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

最近のトラックバック