কোনও ব্যাশের মধ্যে অ্যাপলস্ক্রিপ্ট এম্বেড করা - ত্রুটি হওয়া


3

আমি প্রথমবার বাশ দিয়ে ফিড করছি এবং কাজ করার জন্য সহজ কিছু পাওয়ার চেষ্টা করছি।

#!/bin/bash
    while true ; do
    osascript <<EOF
        tell application "System Events"
            tell every desktop
                set picture to "/Users/bill/Desktop/bckg_changer/ARM_1885.jpg"
            end tell
        end tell
    EOF
done

আমি যখন কমান্ড লাইন থেকে এই ফাইলটি কার্যকর করি তখন এটি ছুড়ে দেয়:

Bills-iMac-4:test bill$ ./test.sh
./test.sh: line 11: syntax error: unexpected end of file

আমি এই প্রশ্নটি পেয়েছি , এবং ফর্ম্যাটিং এবং কাঠামোটি একই রকম - তাই নিশ্চিত না যে কী অনুপস্থিত।

চিত্র পরিবর্তনের স্ক্রিপ্ট নিজেই কাজ করে - আমি যখন যুক্ত করি তখন while loopফাইলের ত্রুটির সমাপ্তি নিক্ষেপ করা হয়।

বিচারকার্য স্থগিত রাখার আদেশ

আমি জানি এই স্ক্রিপ্টটির কোনও অর্থ নেই - ধারণাটি ছিল একটি অবিচ্ছিন্ন লুপ থাকা, যা ডেস্কটপ চিত্রটিকে jpg-এ ফিরিয়ে দেবে যদি পরবর্তীকালে এটি সিস্টেম পছন্দগুলিতে পরিবর্তিত হয়। স্পষ্টতই পদ্ধতি এবং সংস্থান ব্যবহারের একটি দুর্বল পছন্দ ... :-)

উত্তর:


5

পরিবর্তন

osascript <<EOF

থেকে

osascript <<-EOF

-আপনি সসীম ফাইলের শেষে ইন্ডেন্ট করতে দেয়।


1
স্থির যোগ করার <<-EOFফলে ত্রুটি ছুঁড়েছে, তবে উত্তরে ইন্ডেন্টটি সরিয়ে ফেললে কাজ শেষ হবে।
বিল আর্মস্ট্রং

1
@ বিলআর্মস্ট্রং <<-EOFট্যাবগুলিতে ইনডেন্টিংয়ের অনুমতি দেয় তবে ফাঁকা স্থান নয়।
গর্ডন ডেভিসন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.