টার্মিনালে খোলা ফায়ারফক্স ট্যাবগুলির আউটপুট URL


17

আমি টার্মিনাল কমান্ড সহ বর্তমানে খোলা ফায়ারফক্স ট্যাবগুলির URL জানতে চাই। কোন সম্ভাবনা আছে?

এইভাবে আমি তাদের একটি পাঠ্য ফাইলে লিখতে এবং পরে এগুলি দেখতে সক্ষম হব; এবং নিরাপদ সংস্থানসমূহ (আমার প্রায়শই অনেকগুলি খোলা ট্যাব থাকে)। আমি জানি যে ফায়ারফক্সের জন্য একটি অ্যাড-অন রয়েছে, তবে আমি আমার নিজের স্ক্রিপ্টটি আরও রচনাযোগ্য হতে চাই।

উত্তর:


8

খোলা ফায়ারফক্স ট্যাবগুলির বর্তমানে উন্মুক্ত ইউআরএলগুলি sessionstore.jsফাইলের মধ্যে সংরক্ষণ করা হয় যা $HOME/.mozilla/firefox/XXXXXXXX.defaultডিরেক্টরিতে কোথাও অবস্থিত ।

সুতরাং, আপনি এই জাতীয় কিছু থেকে শুরু করতে পারেন:

cat $HOME/.mozilla/firefox/*default/sessionstore.js | sed "s/{/\n/g" | egrep -o '"url".*"scroll"' | cut -d\" -f4

ব্যবহার cat আমরা এই ফাইলটি প্রদর্শন করতে পারেন, এবং সাহায্যে sed, egrepএবং cutআমরা যে ফাইল থেকে খোলা ফায়ারফক্স ট্যাব শুধুমাত্র URL গুলি নির্বাচন করুন।


মধ্যে egrepপ্যাটার্নটির জন্য ডাবল উদ্ধৃতি প্রয়োজন zsh। তা ছাড়া, সুন্দর টিপস, ধন্যবাদ :)
moon.musick

1
এই আদেশটি কীভাবে কাজ করে আপনি কয়েকটি শব্দে বর্ণনা করতে চান? আমি যেমন এটি পাই তেমনটি হ'ল: সেশনস্টোর.জেএস এর বিষয়বস্তু পান, operation "\ n দিয়ে an" প্রতিস্থাপনের জন্য একটি অপারেশনে পাইপ এবং HT দিয়ে শুরু হওয়া সমস্ত লাইন পাওয়ার জন্য একটি অপারেশনে পাইপ করুন? এটি কি সঠিক? কীসের ব্যবহার? \ "প্রতিস্থাপন করছেন?
aldorado

1
@aldorado এটা বিষয়বস্তু প্রদর্শন করা sessionstore.jsফাইল, তাহলে occurences প্রতিস্থাপন "সঙ্গে \n(একটি newline) এবং তারপর আউট ফিল্টার শুধুমাত্র ধারণকারী লাইন httpবা https। ফাইলটি প্রদর্শনের চেষ্টা করুন এবং আপনি কেন জানবেন এটির জন্য নতুন
লাইনের

2
ফাইলটিতে sessionstore.jsকেবল খোলা ট্যাবগুলির ঠিকানা নেই। আরও অনেক ঠিকানা রয়েছে।
নিকোলাস বারবুলেসকো

1
এই উত্তরটি sessionstore.jsফায়ারফক্সের ফাইল ব্যবহার করে । সমস্যাটি হ'ল এই ফাইলটি কুখ্যাতভাবে ট্যাব হারিয়ে ফেলে। আমি এখানে যা চাই তা একটি সমান্তরাল সমাধান যা ফায়ারফক্সকে তার ট্যাবগুলি কী তা জিজ্ঞাসা করে। অ্যাপলস্ক্রিপ্টে পছন্দ করুন।
নিকোলাস বারবুলেসকো

5

এই তথ্যটি $ হোম / .মজিলা / ফায়ারফক্স / * ডিফল্ট / সেশনস্টোর.জেজে সংরক্ষণ করা হয় এবং এর ফর্ম্যাটটি জসন son

নিম্নলিখিত উদাহরণটি পিএইচপি দিয়ে কাজ করার জন্য তৈরি করা হয়েছিল। এটি সমস্ত ফায়ারফক্স উইন্ডো, সমস্ত ট্যাব নিয়ে যায় এবং প্রাসঙ্গিক তথ্য পায় যা "এন্ট্রি" এর শেষ প্রবেশদ্বার। আমরা যদি এটি পার্স করার জন্য এক্সপথ ব্যবহার করতে পারি তবে এটি এমন কিছু হবে: / উইন্ডোজ / * / ট্যাবগুলি / শেষ () / ইউআরএল (আমার এক্সপথ জ্ঞানটি মরিচা হয়)।

আপনি এই কোডটি টার্মিনালে অনুলিপি / অনুলিপি করতে পারেন:

cat $HOME/.mozilla/firefox/*default/sessionstore.js | php -r '
$json=json_decode(fgets(STDIN), TRUE);
foreach($json["windows"] as $w)
foreach($w["tabs"] as $t)
echo end($t["entries"])["url"]."\n";'

সম্পাদনা করুন : পার্ল সহ (তবে প্রথমটি, sudo apt-get libjson-pp-perl ইনস্টল করুন):

cat $HOME/.mozilla/firefox/*default/sessionstore.js | perl -e '
use JSON qw( decode_json );
my $json = decode_json(<STDIN>);
foreach my $w ( @{$json->{"windows"}} ) {
    foreach my $t ( @{$w->{"tabs"}} ) {
        print $t->{"entries"}[-1]->{"url"}."\n";
    }
}'

এই উত্তরটি sessionstore.jsফায়ারফক্সের ফাইল ব্যবহার করে । সমস্যাটি হ'ল এই ফাইলটি কুখ্যাতভাবে ট্যাব হারিয়ে ফেলে। আমি এখানে যা চাই তা একটি সমান্তরাল সমাধান যা ফায়ারফক্সকে তার ট্যাবগুলি কী তা জিজ্ঞাসা করে। অ্যাপলস্ক্রিপ্টে পছন্দ করুন।
নিকোলাস বারবুলেসকো

"ট্যাব হারায়" বলতে কী বোঝ? আমি বর্তমানে ফায়ারফক্স 5 টি ট্যাব সহ চালাচ্ছি এবং এই স্ক্রিপ্টগুলি চালানোর সময় আমি এই 5 টি ট্যাব দেখতে পাচ্ছি। এই সমাধানটি সমস্ত উইন্ডো এবং প্রতিটি উইন্ডোর সমস্ত ট্যাবকে নিয়ে যায়।
হুগো ভাইরা


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

1
আমি recovery.js9 উইন্ডো এবং 840 টি ট্যাব সহ-ফাইলের জন্য দুটি পদ্ধতিই পরীক্ষা করে দেখেছি এবং তারা মনোযোগের মতো কাজ করেছে! - শুধু পরে বংশীধ্বনিতুল্য আউটপুট একটি টেক্সট ফাইলে আমি সেট করতে ছিল বর্ণ-সংকেত মানচিত্র থেকে আইএসও-8859-15 এর ফাইলের জন্য Perl-পদ্ধতি ...!
ডিজে ক্র্যাশডমি

0

এভাবে আপনি ফায়ারফক্সে সর্বাধিক সক্রিয় / সক্রিয় ট্যাবের বর্তমান ইউআরএলটি বের করতে পারেন:

cat recovery.js | php -r '$json=json_decode(fgets(STDIN), TRUE); $tindex = $json["windows"][0]["selected"]-1; $eindex = $json["windows"][0]["tabs"][$tindex]["index"]-1; echo $json["windows"][0]["tabs"][$tindex]["entries"][$eindex]["url"];'

ব্যাখ্যা: প্রথমে এটি সক্রিয় ট্যাবের $tindexসূচক এবং তারপরে এই ট্যাবটিতে সক্রিয় ইতিহাসের প্রবেশ সূচকটি সন্ধান করে$eindex

প্রতি 15 সেকেন্ডে ফায়ারফক্স একটি ব্যাকআপ তৈরি করে *default/sessionstore-backups/recovery.js


1
এই কাজের জন্য পিএইচপি 5-ক্লিলে ইনস্টল করা দরকার আপনি কী উত্তরটি উন্নত করতে যোগ করতে পারেন। সমস্ত সামনের ট্যাব ইউআরএল দখল করার কোনও উপায় আছে কি? ওপি যেমন জিজ্ঞাসা করে।
দামিয়েন

আমি প্রশ্নের এবং আমার উত্তরটির অমিল সম্পর্কে সচেতন, তবে আপনি যদি আমার উত্তরের তথ্য অনুসন্ধান করেন তবে গুগল আপনাকে এখানে নির্দেশ করবে।
লেনার হোয়েট

0

ব্যাশ ব্যবহার করে আমি নিম্নলিখিত উত্তরগুলি পেয়েছি। এটির জন্য কেবল প্যাকেজ দরকার: জকিউ। এটি ইনস্টল করা যেতে পারে: apt-get ইনস্টল jq

jq '.windows[].tabs[].entries[].url' ~/.mozilla/firefox/xkxwaf4z.default/sessionstore-backups/recovery.js

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