Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
function ctrace { echo "+ $@" "$@" } ctrace echo "hi"
この関数を(引用符で)出力するにはどうすればよいですか?
echo "hi"
このバージョンでは、引用符は失われecho hiます...別の例を次に示します。
echo hi
a=b ctrace echo $a
これはecho $a代わりに出力する必要がありますecho b
echo $a
echo b
問題は関数ではなく、呼び出し元です。
最初のケースでは、関数がパラメーターを取得する前に引用符が削除されます。2番目の例で$aは、関数に到達する前に置換が行われます。
$a
試す:
ctrace 'echo "hi"' ctrace 'echo $a'
文字列を一重引用符で囲む必要があります