Applescript とシェル スクリプトでのエスケープに少し問題があります。基本的に、URL は variableUrl として設定され、これがシェル スクリプトに入力されます。
do shell script "cd dir; cat file | grep -v '^http' | sed 's/^/" & variableUrl & "/' > urlsxy.txt"
これは機能していません — 出力ファイルに何も表示されません。問題は、エスケープされていない文字があることだと思います。さらに悪いことに、URL がどのように表示されるかを前もって知ることができないため、エスケープとしてバックスラッシュを挿入する方法を設定できません。を使用する代わりに、variableUrl
ダミーテキストを挿入するだけで問題ありません。たとえば、これは正常に機能します。
do shell script "cd dir; cat file | grep -v '^http' | sed 's/^/dummytext/' > urlsxy.txt"
ちょうど今、URLをbash変数に変えてやってみました...
sed 's/^/"$BASHVAR\\/g
おそらく同じ理由で、これも失敗します。この問題の回避策があるかどうか、またはその内容がどうなるかを事前に知らずに変数全体をエスケープする方法があるかどうか、誰か教えてもらえますか?
私はこれに非常に慣れていません。ご覧のとおり、基本的なことしか知りません。