2012-11-18 12 views
15

特定のx座標とy座標を持つGoogle Chromeを開くシェルコマンドを見つけようとしています(開くときにウィンドウの位置を設定できるようになりました)。コマンドライン引数を使用してこれを行うことは可能ですか?特定のウィンドウ座標を使用してコマンドラインからGoogle Chromeを起動する

私はこれを達成するために、次のコマンドを変更する必要があります。

google-chrome http://www.google.com/

答えて

13

http://peter.sh/experiments/chromium-command-line-switches/は--window位置= xを言い、yはあなたが探しているものです。

私は何年も前に書いた小さなシェルスクリプトを含むように更新しましたが(この質問に答えた後で)、カスタムウィンドウサイズ/位置でクロムを起動する方法の例を提供し、 '偽の'ユーザーを作成する能力を持っていますデータディレクトリ。

危険なオプションが設定されていても動作しないかもしれませんが、考えてみてください。この句をそのまま使用しないでください。フラグの一部が名前変更されているか、プロキシコマンドは

#!/bin/bash -x 

FAKEUSER="${1:-fake-chrome-user}" 
CHROMEROOT=$HOME/.chromeroot/ 

mkdir -p ${CHROMEROOT} 

export PROFILE="${CHROMEROOT}/${FAKEUSER}-chromium-profile" 
export DISK_CACHEDIR="${CHROMEROOT}/${FAKEUSER}-chromium-profile-cache" 
export DISK_CACHESIZE=4096 
export MEDIA_CACHESIZE=4096 

PARANOID_OPTIONS="\ 
     --no-displaying-insecure-content \ 
     --no-referrers \ 
     --disable-zero-suggest \ 
     --disable-sync \ 
     --cipher-suite-blacklist=0x0004,0x0005,0xc011,0xc007 \ 
     --enable-sandbox-logging >/dev/null 2>&1 
     " 


/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \ 
     --remember-cert-error-decisions \ 
     --ignore-certificate-errors \ 
     --ignore-urlfetcher-cert-requests \ 
     --allow-running-insecure-content \ 
     --window-position=2400,400 \ 
     --window-size=1500,1000 \ 
     --no-pings \ 
     --user-data-dir=${PROFILE} \ 
     --disk-cache-dir=${DISK_CACHEDIR} \ 
     --disk-cache-size=${DISK_CACHESIZE} \ 
     --media-cache-size=${MEDIA_CACHESIZE} \ 
     2>&1 


#--proxy-server="socks4://localhost:30604" \ 
#--host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost" \ 
+0

に私のために働いたが、それはまた、FirefoxとIEのために行うことができます?私はここに質問を掲示した:http://stackoverflow.com/questions/26626884/chrome-app-equivalent-in-firefox-ie – liorafar

+1

これはいつもうまくいくわけではない。 http://stackoverflow.com/questions/14592020/google-chrome-new-window-switch-ignores-window-position-and-window-size#comment30263659_14592020 –

+1

これは動作しますが、@ GregBrayを参照してください。 '--user-data-dir'フラグもあります。 –

3

私はこの使用しました)でした:

google-chrome "data:text/html;charset=ISO-8859-1,<html> 
    <head></head><body><script language=\"javascript\"> 
     window.open('http://perso.f-hauri.ch/~felix/svg/dustin_w_Clock_autonom.svg', 
      'clock','toolbar=0,location=0,status=0,menubar=0,scrollbars=1,' 
      +'resizable=1,width=600,height=600,top=100,left=120');</script>" 

が、グーグル・クロムブロックポップアップウィンドウを、ので、この:

google-chrome "data:text/html;charset=ISO-8859-1,<html><head></head><body> 
    <button onclick=\"javascript:window.open(
     'http://perso.f-hauri.ch/~felix/svg/dustin_w_Clock_autonom.svg', 
     'clock','toolbar=0,location=0,status=0,menubar=0,scrollbars=1,' 
     +'resizable=1,width=600,height=600,top=100,left=120');\"> clock </button>" 

これを行うには良い方法を教えてください。

Nota:これもfirefoxと同様に動作します。

+0

'onclick'を' onfocus'に置き換えた場合、これは ''キーを押すだけで、chromeでは有効ですが、firefoxでは有効ではありません。 –

17

@ synthesizerpatelの回答を基にすると、--window-positionはそれ自身では動作しません。

それのよう--user-data-dirまたは--chrome-frameを使用して独自の新しいインスタンスだとしてあなたはそれを起動する必要があります:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir=XXXXXXXXXX --window-size=800,600 --window-position=580,240 --app="http://www.google.com/" 
or 
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --chrome-frame --window-size=800,600 --window-position=580,240 --app="http://www.google.com/" 

残念ながら私にとっては、新しいインスタンスとしてそれを持つことは、それがセッション/クッキーの上に運ばないことの/ etc他のインスタンスからの情報なので、私は(だけ--appパラメータで)正常にそれを開くために持っていた、そして私は開くページではJavaScriptを持っている:

window.moveTo(580,240); 
window.resizeTo(800,600); 

あなたが所有しているWebページを開いた場合、私は推測します他の誰かによって、あなたはc ould上記のjsを持つあなた自身のWebページを開いてから、そのWebページにナビゲートします。

+1

オプション--chrome-frameは私のためには動作しませんでしたが、 '--user-data-dir'と一緒に動作しました。ありがとう – eeezyy

+1

それは非難されているように見える – geotheory

+0

それはまたFirefoxとIEのためにできますか?私はここに質問を投稿しました:http://stackoverflow.com/questions/26626884/chrome-app-equivalent-in-firefox-ie – liorafar

20

GoogleのChromeを使用している場合は、短い方の方法があります:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 
    --profile-directory="Default" 
    --app="data:text/html,<html><body><script>window.moveTo(580,240);window.resizeTo(800,600);window.location='http://www.test.de';</script></body></html>" 

Proは:

  • 自動的にウィンドウ
  • がポップアップブロッカー
  • は、複数のオープン回避開きます別のモニタのウィンドウ(マルチモニタのセットアップ、2つ以上のChromeプロファイルが必要)

コン:

  • はChromeのみの私の最新バージョンでは、他のブラウザ
+0

もう一つの「プロ」 - それはChrome 51のような通常のブラウザプロファイルで動作します。他の答えは明らかにしません。 –

+0

確かに回避策。 –

+1

偉大な、ありがとう!これは私のために働いた唯一の解決策です。 – cronfy

1

でテストされていない「アプリ」モード

  • で動作しているようです - 私は次のことを必要としていました。アプリケーションを終了するたびに、ウィンドウのサイズと位置が記憶されていました。

    "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --chrome-frame --app=https://mightytext.net/web8/?exp=1 
    

    これはバージョン48.0.2564.48ベータメートル(64ビット) とバージョン48.0.2564.48ベータメートル(64ビット)

  • +0

    問題は、手動で位置とサイズを手動で調整する必要があることです。彼らは打ち上げcommand.comに組み込むことはできません – Synetech

    関連する問題