আজ, আমি টুইটারের জন্য একটি পাসওয়ার্ড জেনারেটর গল্ফ কোড করার চেষ্টা করার সময় পুনরায় ধরা পড়লাম।
import string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))
90 টি চর। যেহেতু এটি অনেক অতিরিক্ত জায়গা, তাই আমি বারটি বাড়ানোর এবং এটি কার্যকর করারও সিদ্ধান্ত নিয়েছি।
echo -e "#!/usr/bin/python\nimport string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))">pg;chmod +x pg;./pg
১৩৯ টি চর। স্পষ্টতই উদ্বোধনের পয়েন্টে বাশকে চাপ দেওয়া বাদে দুর্দান্ত।
badp@delta:~$ echo -e "#!/usr/bin/python\nimport string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))">pg;chmod +x pg;./pg
bash: !/usr/bin/python\nimport: event not found
পেস্কি বিস্মরণবোধক বিন্দু। "আসুন এড়িয়ে চলুন," আমি ভেবেছিলাম! আমি সব পরে একটি অতিরিক্ত চরিত্র আছে।
echo -e "#\!/usr/bin/python\nimport string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))">pg;chmod +x pg;./pg
একথাও ঠিক যে ...
badp@delta:~$ echo -e "#\!/usr/bin/python\nimport string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))">pg;chmod +x pg;./pg
./pg: line 2: syntax error near unexpected token `('
./pg: line 2: `import string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))'
badp@delta:~$ cat pg
#\!/usr/bin/python
import string as s,random;print ''.join(random.sample(s.letters+s.digits+s.punctuation,9))
আমার অ্যাসিনাইন কোডটি গল্ফিং একদিকে রেখে - আমি এটি ব্যাখ্যা করতে পারি না।
সঙ্গে \!
, বিস্ময়বোধক বিন্দু পলান ছিল, ছাড়া এটি সত্যিই ছিল না কারণ \!
বাকি ছিল হিসাবে জন্য echo
নিতে।
\x21
পরিবর্তে একটি সমাধান ব্যবহার করা যেতে পারে , তবে আমি নিশ্চিত নই যে এটি ব্যাশ কমান্ডের বিস্মৃত বিবরণ থেকে দূরে আসার উপযুক্ত উপায়।
tl; dr: আপনি কীভাবে বাশ কমান্ডের একটি বিস্ময়বোধক বিন্দু থেকে যথাযথভাবে পালাতে পারেন?
!:0
!$
এবং !^
এত সময় এবং টাইপ করে সঞ্চয় করি।
!event
প্রথম স্থানে সিনট্যাক্স ব্যবহার করে ? এটি সর্বদা আমাকে কেবল ঝামেলা করে।