シェル コマンド cmd には、空白と一重引用符と二重引用符を含めることができます。
これらの引用符をエスケープして、コマンドを POSIX シェルに正しく渡す方法:
>dash -c '
コマンド'
二重引用符として指摘されているもう1つの質問は、二重引用符について尋ねます。そこにある答えの1つはおそらくうまくいくでしょう-コマンドを分割し、連結された引用符を使用することです。たとえば、cmd が
cd "dir"; ls 'foobar'
次に、それを次のように変換します
>dash -c 'cd "dir"; ls '"'foobar'"
これは厄介です...もっと簡単な方法はありませんか?
追加: 誰も私を理解していないようです... 入力、文字列 (完全に正確には、ASCII テーブルの 0 から 127 までの印刷可能な ASCII 文字から作成) を受け取る一般的な手順、アルゴリズムが必要なだけです。 2 番目の文字列を出力します。要件は、最初の文字列がこのように実行される場合
POSIX_shell>string1
結果は同じです
>POSIX_shell -c string2
私は今より明確になりましたか、教えてください。