هذا هو الأمر shell-quotep الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
shell-quote - اقتباس من الحجج للاستخدام الآمن ، غير معدلة في أمر shell
موجز
قذيفة اقتباس [تحول] ... الأرجنتين
الوصف
قذيفة اقتباس يتيح لك تمرير سلاسل تعسفية عبر الصدفة بحيث لا تكون كذلك
تغيرت بالصدفة. يتيح لك هذا معالجة الأوامر أو الملفات ذات المساحة البيضاء المضمنة
أو قصف الأحرف المتلألئة بأمان. وفيما يلي بعض الأمثلة على ذلك.
أمثلة
سه الحفاظ على وسائط
عند تشغيل أمر بعيد باستخدام ssh ، لا يحتفظ ssh بالوسيطات المنفصلة
يستقبل. تقوم فقط بربطهم بمسافات وتمريرهم إلى "$ SHELL -c". هذا
لا يعمل على النحو المنشود:
ssh host touch 'hi there' # فشل
يقوم بإنشاء ملفين ، hi هناك. بدلاً من ذلك ، قم بما يلي:
cmd = `لمس اقتباس قذيفة 'مرحبًا هناك'`
مضيف ssh "$ cmd"
يمنحك هذا ملفًا واحدًا فقط ، hi هناك.
عملية المعالجة جد الناتج
ليس من الممكن عادة معالجة قائمة عشوائية من الملفات التي تم إخراجها بواسطة جد مع
نص شل. أي شيء تضعه في $ IFS لتقسيم الناتج يمكن أن يكون شرعيًا
في اسم الملف. إليك كيف يمكنك القيام بذلك باستخدام قذيفة اقتباس:
مجموعة EV - `find -type f -print0 | xargs -0 قذيفة اقتباس --`
تصحيح قذيفة مخطوطات
قذيفة اقتباس أفضل من صدى لتصحيح البرامج النصية شل.
تصحيح () {
[-z "$ debug"] || اقتباس شيل "التصحيح:" "$ @"
}
بدافع صدى لا يمكنك التمييز بين "debug 'foo bar'" و "debug foo bar" ،
ولكن مع قذيفة اقتباس تستطيع.
حفظ a أمر لـ الى وقت لاحق
قذيفة اقتباس يمكن استخدامها لبناء أمر shell ليتم تشغيله لاحقًا. قل أنك تريد
المستخدم ليتمكن من إعطائك مفاتيح تبديل للأمر الذي ستقوم بتشغيله. إذا لم تفعل
تريد إعادة تقييم المفاتيح بواسطة shell (وهي عادة فكرة جيدة ، وإلا
هناك أشياء لا يمكن للمستخدم المرور من خلالها) ، يمكنك فعل شيء مثل هذا:
user_switches =
بينما [$ #! = 0]
do
الحالة × 1 دولار في
س - التمريري)
[$ # -gt 1] || يموت "بحاجة إلى حجة مقابل 1 دولار"
user_switches = "$ user_switches" `shell-quote -" $ 2 "`
يحول؛؛
# معالجة المفاتيح الأخرى
ESAC
نقل
فعل
# لاحقاً
EVAL "shell-quote some-command $ user_switches my args"
OPTIONS
--Debug
قم بتشغيل التصحيح.
--مساعدة
اعرض رسالة الاستخدام وتموت.
--الإصدار
إظهار رقم الإصدار والخروج.
التوفر
الكود مُرخص بموجب GNU GPL. يفحص http://www.argon.org/~roderick/ أو CPAN لـ
الإصدارات المحدثة.
استخدم shell-quotep عبر الإنترنت باستخدام خدمات onworks.net