কমান্ড লাইনের জন্য একটি "ওপেন উইথ" কমান্ড আছে?


24

ফাইল টাইপের উপর ভিত্তি করে কমান্ড লাইনের একটি নির্দিষ্ট ফাইল খোলার জন্য ব্যবহৃত প্রোগ্রামগুলির প্রস্তাবিত তালিকা পাওয়ার কোনও উপায় আছে? উদাহরণস্বরূপ, একটি .pdfফাইল open with...প্রোগ্রাম Evinceএবং ব্যবহার করে একটি সুপারিশ করতে হবে Document Viewer

আমি বেশিরভাগ জিনিসের জন্য কমান্ড লাইনটি ব্যবহার করি তবে কখনও কখনও আমি কোনও প্রোগ্রামের নামটি ভুলে যাই যা আমি একটি বিশেষ ধরণের ফাইল খোলার জন্য ব্যবহার করতে চাই।

বিটিডাব্লু আমি উবুন্টু 13.10 ব্যবহার করছি।

প্রো-টিপ

নীচে @ এসএমএলের নির্বাচিত উত্তরের জন্য ধন্যবাদ, আমি একটি ফাইলটিতে নিম্নলিখিত বাশ স্ক্রিপ্ট তৈরি করেছি openwith.sh:

xdg-mime query default $(xdg-mime query filetype $1)

একটি নাম হিসাবে যুক্ত করুন বা openwithকমান্ড হিসাবে সরাসরি চালিত করুন।


1
আপনি চেষ্টা করতে পারেন gnome-open file। আমি সরলতার জন্য alias o='gnome-open'আমার সাথে যুক্ত করেছি .bashrc
পল জিডি

gnome-openএকইভাবে কাজ করে xdg-open
SLM

উত্তর:


33

এমন কোনও কমান্ড নেই যা আমি কখনও দেখেছি যা "ওপেন ..." হিসাবে কাজ করবে তবে আপনি সেই বিশেষ ধরনের ফাইলের সাথে সম্পর্কিত অ্যাপ্লিকেশনটিতে xdg-open <file>একটি আদেশ খোলার জন্য কমান্ডটি ব্যবহার করতে পারেন <file>

উদাহরণ

একটি পাঠ্য ফাইল খোলা হচ্ছে:

$ xdg-open tstfile.txt
$

ফাইলটি ফলাফল tstfile.txtখোলা হচ্ছে gedit:

                         জেডিট এর এসএস

একটি LibreOffice Writer নথি খোলা হচ্ছে:

$ xdg-open tstfile.odt 
$

লেখকটিতে ফাইলটি tstfile.odtখোলা হচ্ছে ফলাফল :

                         এস এস লেখক

কোন অ্যাপস ব্যবহার করা হয়?

xdg-mimeপ্রদত্ত ফাইলের ধরণের সাথে কী কী অ্যাপ্লিকেশন যুক্ত রয়েছে তা জানতে আপনি সিস্টেমটিকে জিজ্ঞাসা করতে ব্যবহার করতে পারেন ।

$ xdg-mime query default $(xdg-mime query filetype tstfile.txt)
gedit.desktop calibre-ebook-viewer.desktop

$ xdg-mime query default $(xdg-mime query filetype tstfile.odt)
libreoffice-writer.desktop calibre-ebook-viewer.desktop

এটি একটি 2 পদক্ষেপ অপারেশন। প্রথমে আমি একটি প্রদত্ত ফাইল, এর মাইম-টাইপ জন্য অনুসন্ধান করছি xdg-mime query filetype tstfile.txt, যা ফিরে আসবে text/plain। এরপরে এই মাইম-টাইপের সাথে যুক্ত অ্যাপ্লিকেশনগুলির তালিকা খুঁজে বের করার জন্য এটি অন্য চেহারা সম্পাদন করতে ব্যবহৃত হয়। আপনি উপরে দেখতে পাচ্ছেন যে আমার কাছে 2 টি অ্যাপ্লিকেশন যুক্ত রয়েছে geditএবং ফাইলগুলির calibreজন্য .txt

আপনি xdg-mimeসমিতিগুলিও পরিবর্তন করতে ব্যবহার করতে পারেন । দেখুন man xdg-mimeআরো বিস্তারিত জানার জন্য।


ডিফল্ট প্রোগ্রামগুলি ছাড়াও অন্যান্য ধরণের প্রোগ্রাম প্রদর্শন করার কোনও উপায় আছে কি? উদাহরণস্বরূপ, আমি কেবল okularপিডিএফ দেখতে ইনস্টল করেছি , তবে উপরের আপনার উদাহরণটি কেবলমাত্র evinceযখন আমি এটি একটি পিডিএফ ফাইলে চালাই তবে তা প্রদর্শিত হয়।
modulitos

1
@ লুকাস - হ্যাঁ আমি যে উদাহরণগুলি দেখিয়েছি সেগুলি অ্যাপলিকেশনগুলি দেখায় যা উপরের একটি প্রদত্ত ফাইলের সাথে সম্পর্কিত। প্রাক্তন জন্য। প্রকারের ফাইলগুলি .txtউদাহরণস্বরূপ জিডিট এবং ক্যালিবারের সাথে যুক্ত।
slm

আমি .desktopযে প্রোগ্রামগুলিকে তালিকাবদ্ধ করতে চাইছি তার জন্য আমার কি ফাইল থাকা দরকার ? উদাহরণস্বরূপ, আমি যখন কোনও .pdfফাইলে স্ক্রিপ্টটি চালিত করি তখন তা ফিরে আসে evince.desktop, যদিও আমি চালাতে পারি okular
modulitos

@ লুকাস - এটি সম্ভবত নতুন কিউ হিসাবে জিজ্ঞাসা করা হয়েছে, যেহেতু আমরা এখন মূল প্রশ্ন থেকে দূরে চলেছি।
slm

5

আপনি বেশিরভাগ কমান্ড লাইন কাজ করেন, তাহলে আপনি ভালো একটি অভিশাপ ভিত্তিক ফাইল ম্যানেজার তাকান করতে পারে, রেঞ্জার বা vifm । উভয়ই আপনাকে ফাইল টাইপের জন্য ডিফল্ট ক্রিয়া সংজ্ঞায়িত করতে দেয়।

ভিএফএম-এ, উদাহরণস্বরূপ, আপনি এর মধ্যে সমিতিগুলি ~/.vifm/vifmrcসংজ্ঞায়িত করতে পারেন:

" Images
filetype *.jpg,*.jpeg,*.gif,*.tif,*.png,*.bmp sxiv 

" Media
filetype *.flv,*.avi,*.mp4,*.mpeg,*.mpg,*.mov,*.ogg,*.ogv,*.mkv mpv 

" Web
filetype *.html,*.htm,*.shtml /home/jason/Scripts/vimprobtab.sh 

" PDF
filetype *.pdf apvlv

Enterনির্ধারিত ক্রিয়াগুলির মধ্যে একটির সাথে যে কোনও ফাইলের কার্সারের সাথে হিট করা এটি প্রাসঙ্গিক অ্যাপ্লিকেশন দ্বারা খোলার দেখতে পাবে। আপনি যেমন .htmlফাইলগুলির ক্ষেত্রে দেখতে পাচ্ছেন , আপনি কোনও স্ক্রিপ্টের পাশাপাশি একটি অ্যাপ্লিকেশনও ট্রিগার করতে পারেন।


5

বাছাই করুন, তবে ফলস্বরূপ এটি আপনার ডিফল্ট অ্যাপ্লিকেশনটিকে পরিবর্তন করবে। অন্যান্য অপারেটিং সিস্টেমে এটি কী কাজ করে তা আমি নিশ্চিত নই, তবে নীচের নির্দেশাবলী উবুন্টু 12.04 - ডেস্কটপ এক্স 86-64 এর জন্য কাজ করে। আমার কাছে কোনও পিডিএফ ফাইল কার্যকর ছিল না তাই আমি একটি .zip সংরক্ষণাগার দিয়ে পরীক্ষা করেছি।

সাধারণ পদক্ষেপ

ধাপ 1

একটি টার্মিনাল টাইপ:

$ mimeopen -d /home/username/example.zip
স্ক্রিনশট # 1 = https://copy.com/qfWSZaZ4FzlA

    এসএস # 1

ধাপ ২

#আপনি যে অ্যাপ্লিকেশনটি চান সেটি প্রবেশ করে এবং টিপে তালিকাটি চয়ন করুন enter। আপনার চয়ন করা অ্যাপ্লিকেশনটিতে ফাইলটি তত্ক্ষণাত খুলবে।

স্ক্রিনশট # 2 = https://copy.com/um6Rf7zRdceT

    এসএস # 2

স্ক্রিনশট # 3 = https://copy.com/ytwKCqR6nv8i

    এসএস # 3

নোট

নোট 1

এটি আপনার চয়ন করা ডিফল্ট অ্যাপ্লিকেশনটিকে পরিবর্তন করে এবং তাই আপনি যে কোনও সময় এই ফাইল টাইপটি খোলেন এটি তালিকা থেকে আপনি সর্বশেষে যে কোনও অ্যাপ্লিকেশনটি বেছে নেবে এটি এখন খোলে।


আপনি কি স্ক্রিনশট 3 এর URL এ একটি হ্যাশ চিহ্ন (#) লাগিয়েছেন?
ট্রাইসিস

@ ট্রিসিস আমি সর্বাধিক 2 টি ইউআরএল সীমাটি বাইপাস করার জন্য এটি ব্যবহার করেছি।
দয়া করে আমাকে

ওহ, বুদ্ধিমান। এখনও অদ্ভুত দেখাচ্ছে, যদিও।
ট্রাইসিস

আমি আপনাকে এ পরিষ্কার করেছি এবং আপনার জন্য তৃতীয় ইউআরএল যুক্ত করেছি।
SLM

2

আমি অনুমান করি আপনি যে ইউনিক্স ব্যবহার করছেন তার স্বাদ নির্ভর করে। ওএস এক্স-এ, আপনি openকমান্ডটি ব্যবহার করতে পারেন :

OPEN(1)                   BSD General Commands Manual                  OPEN(1)

NAME
     open -- open files and directories

SYNOPSIS
     open [-e] [-t] [-f] [-F] [-W] [-R] [-n] [-g] [-h] [-b bundle_identifier]
          [-a application] file ... [--args arg1 ...]

DESCRIPTION
     The open command opens a file (or a directory or URL), just as if you had
     double-clicked the file's icon. If no application name is specified, the
     default application as determined via LaunchServices is used to open the
     specified files.

     If the file is in the form of a URL, the file will be opened as a URL.

...

এছাড়াও, openকমান্ডটি প্রথম নেক্সটস্টেপে উপস্থিত হয়েছিল এবং ওএস এক্স দ্বারা উত্তরাধিকার সূত্রে প্রাপ্ত হয়েছিল, সুতরাং এটি অন্য কোনও কোনও আকারে আরও কম-বেশি ওপেনস্টেপ-ভিত্তিক প্ল্যাটফর্মগুলিতে (যেমন আফটারস্টেপ, লাইটস্টেপ) উপলভ্য হতে পারে।
আয়নোক্লাস্ট ব্রিঘাম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.