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

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

新規登録して質問してみよう
ただいま回答率
85.35%
シェルスクリプト

シェルスクリプトは、UNIX系のOSもしくはコマンドラインインタプリタ向けに記述されたスクリプト。bash/zshといったシェルによって実行されるため、このように呼ばれています。バッチ処理などに使用されており、テキストファイルに書かれた命令を順に実行します。

Q&A

解決済

1回答

408閲覧

シェルスクリプトにおけるコマンドライン引数の処理

nagato1111

総合スコア1

シェルスクリプト

シェルスクリプトは、UNIX系のOSもしくはコマンドラインインタプリタ向けに記述されたスクリプト。bash/zshといったシェルによって実行されるため、このように呼ばれています。バッチ処理などに使用されており、テキストファイルに書かれた命令を順に実行します。

0グッド

0クリップ

投稿2020/05/13 07:40

編集2020/05/13 08:13

シェルスクリプトで以下のファイルを実行するときちんと読み込んでくれません
###aaa.sh

#!/usr/bin/bash echo "$1" ./execfile/graphcheck.exe "$1"

これをコマンドで./aaa.sh graphfile/Aというように実行し,
graphfile/Aという文字列をコマンドライン引数に与えて実行したいのですが
実行した結果./execfile/graphcheck.exe にきちんとAが与えられていないようです.
普通に./execfile/graphcheck.exe graphfile/Aと実行するとうまくいくのですが,なぜでしょうか.

追記

#!/usr/bin/bash echo "$1" ./execfile/graphcheck.exe "$1"

これの一番最後の部分に改行があったためうまく読み込めてなかったようです.改行をなくしたらうまく動いたのですが,これはコマンドライン引数に改行を含めた文字列が与えられてしまっているということなんでしょうか?

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

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

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

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

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

gentaro

2020/05/13 08:58

単純にもう一度編集して改行しても再現するんでしょうか? 改行に見えて変な文字コードが入ってたとか、改行コードがLFじゃなくCRLFだったりとか、その辺はどうなんでしょう。
nagato1111

2020/05/13 09:04

コメントありがとうございます.確認してみたところまさに改行コードがCRLFになっていました. LFにしたところちゃんと動きました.ありがとうございます!!!
guest

回答1

0

自己解決

改行コードがCRLFになっていたのでLFに直したら動いた

投稿2020/05/13 09:04

nagato1111

総合スコア1

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問