मैं Chrome में स्टार्टअप टैब को पिन करने के निर्देशों का पालन करने का प्रयास कर रहा हूं । OS X पर मैं अपनी गोदी में बनी वस्तुओं पर कमांड लाइन तर्क कैसे जोड़ूं?
मैं Chrome में स्टार्टअप टैब को पिन करने के निर्देशों का पालन करने का प्रयास कर रहा हूं । OS X पर मैं अपनी गोदी में बनी वस्तुओं पर कमांड लाइन तर्क कैसे जोड़ूं?
जवाबों:
आपके पास मूल रूप से दो विकल्प हैं:
विकल्प 1 : एक एप्लिकेशन बनाने के लिए ऑटोमेटर का उपयोग करें जो प्रभावी रूप से कमांड लाइन तर्क के साथ क्रोम लॉन्च करता है।
ऑटोमेटर शुरू करें और एक एप्लिकेशन बनाने के लिए चुनें । लाइब्रेरी / यूटिलिटीज फोल्डर में रन शैल स्क्रिप्ट पर डबल-क्लिक करें और पाठ सामग्री को प्रतिस्थापित करें - - निम्नलिखित के साथ:cat
open -a "Google Chrome.app" --args -pinned-tab-count=4
# keep the .app suffix or will break with Parallels
अपनी मर्जी से कहीं भी सेव करें।
इस एप्लिकेशन के आइकन को बदलने के लिए, अपने वास्तविक Google Chrome पर जानकारी प्राप्त करें, ऊपर बाईं ओर स्थित आइकन पर क्लिक करें Cmd-C, अपने Chrome Automator ऐप पर Get Info , आइकन पर क्लिक करें और दबाएं Cmd-V।
चूंकि यह एक अलग अनुप्रयोग है, डॉक दो क्रोम अनुप्रयोगों को प्रदर्शित करेगा जब यह चल रहा है: क्रोम, और आपका क्रोम लांचर।
विकल्प 2 : एक स्क्रिप्ट लॉन्च करने के लिए अपने एप्लिकेशन बंडल को संपादित करें। यह स्क्रिप्ट कमांड लाइन के तर्क को जोड़ते हुए वास्तविक एप्लिकेशन को शुरू करेगी।
राइट-क्लिक करें Google Chrome.appऔर दिखाएँ पैकेज सामग्री का चयन करें । पर जाएं Contents/और खोलने Info.plistमें संपत्ति सूची संपादक / Xcode (एप्पल के डेवलपर उपकरण), या किसी तीसरे पक्ष के plistसंपादक।
प्रविष्टि के लिए देखो CFBundleExecutableया Executable File। इसका मूल्य याद रखें (जैसे firefox-binफ़ायरफ़ॉक्स के लिए)। इसे बदलें parameterized-app.sh।
टर्मिनल खोलें और निम्नलिखित दर्ज करें:
touch /Applications/Firefox.app/Contents/MacOS/parameterized-app.sh
open /Applications/Firefox.app/Contents/MacOS/parameterized-app.sh
.shफ़ाइल के लिए एक संपादक खुल जाएगा। फ़ाइल की सामग्री यहां सेट करें:
#!/usr/bin/env bash
exec /Applications/Firefox.app/Contents/MacOS/firefox-bin -ProfileManager
( Info.plistइच्छित कमांड-लाइन आर्ग्युमेंट्स को जोड़कर आपके द्वारा हटाए गए वास्तविक निष्पादन योग्य नाम का उपयोग करते हुए )
सहेजें और बंद करें। टर्मिनल में, निम्नलिखित दर्ज करें:
chmod +x /Applications/Firefox.app/Contents/MacOS/parameterized-app.sh
अब, टर्मिनल को बंद करें और अपने एप्लिकेशन (जो अभी नहीं चल रहा होगा) को एक अलग फ़ोल्डर में ले जाएं और फिर से वापस करें। यह लॉन्च सेवाओं को अपडेट करेगा , अन्यथा आपके परिवर्तनों को अनदेखा किया जाएगा और आपको बेहद परेशान करेगा।
अब, जब आप अपना आवेदन खोलते हैं, तो यह वास्तव में .shफ़ाइल को निष्पादित करेगा , जो वास्तविक निष्पादन योग्य फ़ाइल को चालू करेगा, कमांड लाइन आर्ग्स भेज रहा है।
यह आपके द्वारा अपेक्षित की तरह दिखेगा और व्यवहार करेगा, लेकिन जब भी आप अपना एप्लिकेशन अपडेट करेंगे, तो आपको इसे दोहराना होगा, क्योंकि यह आमतौर पर एप्लिकेशन बंडल और आपके द्वारा किए गए सभी परिवर्तनों को बदल देगा।
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/Hello\ World.app
आप एक स्क्रिप्ट लिख सकते हैं जो Chrome लॉन्च करती है, लेकिन वह डॉक में एप्लिकेशन आइकन नहीं होगी, और इससे एक अलग क्रोम आइकन दिखाई देगा। तो आपको एक एप्लीकेशन पैकेज बनाना होगा।
सबसे पहले अपने क्रोम ऐप की एक कॉपी बनाएं। फिर, दो दृष्टिकोण हैं जो काम कर सकते हैं; मुझे यकीन नहीं है कि जो मैक ओएस एक्स और / या क्रोम के आत्म-अद्यतन के साथ बेहतर खेलेंगे।
एक 'लॉन्चर' बनाएं, जो सिर्फ क्रोम को तर्कों के साथ कहता है।
MacOS फ़ोल्डर में, "Google Chrome" निष्पादन योग्य को हटा दें और इसे शेल स्क्रिप्ट से बदल दें जो वास्तविक क्रोम कहलाती है:
#!/bin/sh
exec '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome' -pinned-tab-count=4
chmod +xस्क्रिप्ट को मत भूलना ।
आपके द्वारा चलाए जा रहे Chrome पैकेज को संशोधित करें।
MacOS फ़ोल्डर में, "Google Chrome" का नाम बदलें और एक शेल स्क्रिप्ट लिखें, जो अतिरिक्त तर्कों के साथ वास्तविक चीज़ को आमंत्रित करती है:
#!/bin/sh
exec '/Applications/My Modified Google Chrome.app/Contents/MacOS/Google Chrome-real' -pinned-tab-count=4
CodeResourcesऔर / या _CodeSignatureइसे हटाने की आवश्यकता हो सकती है ।यह सब मैक ऐप पैकेज की मेरी समझ पर आधारित है; मैंने वास्तव में क्रोम पर इन परिवर्तनों का विशेष रूप से परीक्षण नहीं किया है। यह भी देखने योग्य है कि मैक पर क्रोम निष्पादन योग्य इस विकल्प का समर्थन नहीं करता है, क्योंकि मैक अनुप्रयोगों को आमतौर पर नियंत्रणीय कमांड-लाइन विकल्पों के साथ चलने की उम्मीद नहीं की जाती है (उदाहरण के लिए, विंडोज, जहां एप्लिकेशन शॉर्टकट के माध्यम से सामान्य रूप से लॉन्च किए जाते हैं जो कर सकते हैं एम्बेडेड विकल्प हैं)।
chmod 755 Google\ Chromeआपके समाप्त होने के बाद (आपकी स्क्रिप्ट) को मत भूलना । मैंने वास्तव में अपनी स्क्रिप्ट का नाम लॉन्च कर दिया है। उन्होंने अपडेट के लिए Google \ Chrome को सिम्प्लाइड किया है।