特定の x 座標と y 座標で Google Chrome を開くシェル コマンドを見つけようとしています (ウィンドウが開いたときにウィンドウの位置を設定できるようにするため)。コマンド ライン引数を使用してこれを行うことは可能ですか?
これを実現するには、次のコマンドを変更する必要があります。
google-chrome http://www.google.com/
特定の x 座標と y 座標で Google Chrome を開くシェル コマンドを見つけようとしています (ウィンドウが開いたときにウィンドウの位置を設定できるようにするため)。コマンド ライン引数を使用してこれを行うことは可能ですか?
これを実現するには、次のコマンドを変更する必要があります。
google-chrome http://www.google.com/
http://peter.sh/experiments/chromium-command-line-switches/は、-window-position = x、yがあなたが探しているものだと言っています。
数年前に書いた小さなシェルスクリプトを含めるように数年後に更新します(ただし、この質問に答えた後)。これは、カスタムウィンドウサイズ/位置でchromeを開始する方法の例を提供し、名前で「偽の」ユーザーデータディレクトリを作成する機能を備えています。 。
まだ機能する場合と機能しない場合があり、いくつかの危険なオプションが設定されていますが、アイデアは得られます。この逐語的な使用はしないでください。一部のフラグの名前が変更されているか、完全に削除されている可能性があります。
#!/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" \
@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/"
残念ながら、それを新しいインスタンスとして持つことは、他のインスタンスからのセッション/クッキー/などの情報を引き継がないことを意味するため、通常どおり(--app
パラメーターのみで)開いてから、ページにjavascriptを含める必要がありました私は開く:
window.moveTo(580,240);
window.resizeTo(800,600);
他の誰かが所有する Web ページを開いた場合、上記の js を含む独自の Web ページを開いて、その Web ページに移動できると思います。
私はこれを使用しました:
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はpopup windowsをブロックするため、次のようになります。
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>"
これを行う良い方法を教えてください。
注:これは firefox でも同様に機能します。
最新バージョンの Chrome では、次のものだけが必要でした。アプリを閉じるたびに、ウィンドウのサイズと位置が記憶されました。
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --chrome-frame --app=https://mightytext.net/web8/?exp=1
これは、バージョン 48.0.2564.48 beta-m (64 ビット) およびバージョン 48.0.2564.48 beta-m (64 ビット) で機能しました。