前提・実現したいこと
linuxで以下のようなダブルクォート付きメッセージを出力したい。
test-message "qoute" test
発生している問題・エラーメッセージ
スクリプトで上記メッセージを渡すとダブルクォートが消えてしまう。
該当のソースコード
スクリプト:test.sh
--#!/bin/bash
--echo $1
実行コマンド:./test.sh "test-message "qoute" test"
試したこと
スクリプト引数のメッセージ内のダブルクォートをエスケープすることで出力したいメッセージになることはわかってはいるのですが、
実際には、スクリプトの引数は変数でのメッセージ取得を想定しています。
スクリプト内でダブルクォートをエスケープするような置換をかけたいと考えておりますが、
sedコマンドで、先頭と末尾のダブルクォート以外のダブルクォートをエスケープ付のダブルクォートに置換することで
解決できるのではと考えたのですが、sedの条件式が上手く作れません。
sedの置換、もしくはそれ以外で想定したメッセージを出力できるような方法がありましたら
ご教授いただけますと幸いです。
以上、よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー