bashの関数の引数にスペースが入るとズレる件
bashの関数の引数にスペースが入ると、引数が分離して、位置がズレてしまいます。
これを回避する方法はありませんか?
■aaa.sh-Top
#!/bin/bash
declare FuncPara1
declare FuncPara2
function f_echo() {
echo 'uf_echo1='$1
echo 'uf_echo2='$2
echo 'uf_echo3='$3
}
echo '---test1---'
FuncPara1='aaabbb'
FuncPara2='ccc'
f_echo ${FuncPara1} ${FuncPara2}
echo '---test2---'
FuncPara1='aaa bbb'
FuncPara2='ccc'
f_echo ${FuncPara1} ${FuncPara2}
■aaa.sh-Bottom
■aaa.shの実行
# ./aaa.sh
---test1---
uf_echo1=aaabbb
uf_echo2=ccc
uf_echo3=
---test2---
uf_echo1=aaa
uf_echo2=bbb
uf_echo3=ccc
このtest2の時に、
---test2---
uf_echo1=aaa bbb
uf_echo2=ccc
uf_echo3=
となって欲しい。
もしくは、何かしら「なったテイ」で、
引数1の値は「aaa bbb」
引数2の値は「ccc」
と関数側で判断できる方法はありませんか?
No.1ベストアンサー
- 回答日時:
ダブルクオートでくくっちゃダメ?
ありがとうございます。
■■■
#!/bin/bash
declare FuncPara1
declare FuncPara2
function f_echo() {
echo 'uf_echo1='$1
echo 'uf_echo2='$2
echo 'uf_echo3='$3
}
echo '---test1---'
FuncPara1='aaabbb'
FuncPara2='ccc'
f_echo "${FuncPara1}" "${FuncPara2}"
echo '---test2---'
FuncPara1='aaa bbb'
FuncPara2='ccc'
f_echo "${FuncPara1}" "${FuncPara2}"
echo '---test3---'
FuncPara1='aaa" bbb'
FuncPara2='ccc'
f_echo "${FuncPara1}" "${FuncPara2}"
■■■
こういう事ですか。
■■■
---test1---
uf_echo1=aaabbb
uf_echo2=ccc
uf_echo3=
---test2---
uf_echo1=aaa bbb
uf_echo2=ccc
uf_echo3=
---test3---
uf_echo1=aaa" bbb
uf_echo2=ccc
uf_echo3=
ダブルクォートを渡してもイケたし、全部解決しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux 次の要件を満たすにはどのように修正したらよろしいでしょうか 1 2022/11/24 20:57
- UNIX・Linux Linuxのbash環境下です。 1 2022/11/27 12:31
- その他(プログラミング・Web制作) ログインシェル時のSHELL環境変数 1 2022/06/08 19:21
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
- UNIX・Linux デフォルト値のパラメータ展開 1 2022/08/12 17:34
- UNIX・Linux bashの変数でブランクがあるかチェックする方法教えて下さい。 3 2023/04/06 16:09
- その他(プログラミング・Web制作) 単純なコマンドプロンプトが動きません。 2 2022/04/19 15:21
- Perl bashスクリプト 2 2023/02/10 21:01
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
スクリプトのエラー「unexpected EOF while looking for matching `'」の解決法は?"
UNIX・Linux
-
空白を含んだシェル変数の代入
UNIX・Linux
-
Linux:sedコマンドで置換がしたいです!!
UNIX・Linux
-
-
4
bashでの空白と空文字の判断
UNIX・Linux
-
5
TOPコマンドで表示するCPU使用率で100%以上の表示について
UNIX・Linux
-
6
shシェルスクリプト 空白行の入れ方
その他(プログラミング・Web制作)
-
7
Linuxで標準出力したファイルの文字コードついて
UNIX・Linux
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ナベアツプログラム(3の倍数...
-
バッチファイルでpingの結果を...
-
switch()文で値の大小比較
-
Dosブロンプトでtabを出力したい
-
変数の受け渡しによる画像の表示
-
shシェルスクリプト 空白行の...
-
phpでcookieがうまく保存されない
-
bashの関数の引数にスペースが...
-
findstrのerrorlevel
-
syntax error, unexpected 'ech...
-
PHPで訪問回数を表示するカウン...
-
データベースから出力したデー...
-
バッチファイルで、全てのウィ...
-
batファイルでドロップしたデー...
-
Windowsのsetコマンドでの小数...
-
PHPで値を表示する「echo」「pr...
-
小数点以下0の非表示
-
PHPにて変数をテキストファイル...
-
DTOとEntityの差は何ですか。
-
「取得先」という表現について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
phpでcookieがうまく保存されない
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
syntax error, unexpected 'ech...
-
findstrのerrorlevel
-
バッチファイルで、全てのウィ...
-
PHPで訪問回数を表示するカウン...
-
PHP一覧表示した項目にリンクを...
-
DBのハッシュ化したパスワード...
-
小数点以下0の非表示
-
Windowsのsetコマンドでの小数...
-
オブジェクトの中身の判定(PHP)
-
PHPでのパスワード制限のセキュ...
-
bashの関数の引数にスペースが...
-
RSSにdiv,ul classを付けたいの...
-
pdftkを使った処理をバッチファ...
-
ゼロとNULLを区別して number_f...
-
コマンドプロンプト フォルダ内...
おすすめ情報