ফাইলপথের শুরুতে আমি কিভাবে শেল স্বয়ংসম্পূর্ণ করতে পারি?


0

আমি গভীরভাবে নিছক ফোল্ডার গঠন সঙ্গে একটি প্রকল্প আছে। বেশিরভাগ সময় আমি যে ফাইলটির সাথে কাজ করতে চাই তার নামটি জানি, তবে ফোল্ডার পাথটি খুব দীর্ঘ / জটিল, যখন আমি এটি সম্পাদনা করতে চাই, যেমন:

vim folder/is/deep/down/there/myfile.js

যদি শেল অটোটি আমার জন্য পাথটি বানাতে পারে তবে ফাইলের নামটি অনন্য, যেমন:

vim *myfile.js

প্রেস ট্যাব

vim folder/is/deep/down/there/myfile.js

আমি বেশিরভাগ ব্যাশ ব্যবহার করি, কিন্তু সমস্যাটি সমাধান করতে পারলে আমি zsh এর সাথে ভাল আছি।


কাজকর্ম: কি সম্পর্কে mypath=folder/is/deep/down/there/, vim $mypath/myfile.js? এবং হ্যাঁ, SO এ সুপারিশ হিসাবে zsh GLOB_COMPLETE দেখুন।
meatspace

ধন্যবাদ @ মেটস্পেস, এটি কয়েকটি ফোল্ডারের জন্য ভাল কাজ করবে তবে আমি যে প্রকল্পটি কাজ করছি তার কয়েকটি ভিন্ন পথ রয়েছে। নামকরণ এবং তাদের সব স্মরণযোগ্য হতে হবে না।
canerbalci

উত্তর:


1

Zsh, আপনি ব্যবহার করতে পারেন ** অপারেটর এটি করতে:

vim **/myfile.js

তারপর চাপুন ট্যাব এবং zsh recursively জন্য অনুসন্ধান করা হবে myfile.js ফাইল।


0

বাশ 4 এবং উচ্চতর আপনি ব্যবহার করতে পারেন ** গ্লোববিংয়ের জন্য অপারেটর (ফাইল নামগুলি আনতে) এবং ট্যাব সমাপ্তির জন্য (একইভাবে Heptite থেকে zsh উত্তর )।

আমি ট্যাব সমাপ্তির জন্য যখন অবগত ** বাশে যোগ করা হয়েছে (সম্ভবত 4.0), এমনকি যদি তারা মানক হয় তবে তারা 4.3.11 (লুবান্টুতে) আমার জন্য কাজ করছে। তারা ডিফল্টরূপে সক্রিয় করা প্রদর্শিত হবে।

যাইহোক, আচরণ ** globbing জন্য ডিফল্টরূপে সক্রিয় করা হয় না, এবং আপনি সেট করা প্রয়োজন globstar বিকল্প ব্যবহার করে shopt। বলতে হয়, চালানো shopt -s globstar আপনি কোথাও ব্যবহার করার আগে কোথাও ** একটি globbing প্যাটার্ন (সম্ভবত আপনার মধ্যে .bashrc )। এটা সক্রিয় যে ইঙ্গিত মূল্য globstar একাধিক মিল আছে যখন আপনার ট্যাব সমাপ্তি হস্তক্ষেপ করতে পারে। আমি একটি দ্রুত পরীক্ষা এই আবিষ্কৃত।

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