2013-04-25 5 views

Antwort

2

Es wird nicht geöffnet, weil es denkt, dass Sie die Datei na eingeben mich index.htm.l#intro. Soweit ich das beurteilen kann, kann man eine Seite nicht von der Kommandozeile zu einem Anker öffnen.

Als Workaround können Sie Javascript verwenden, um mit der onLoad-Funktion oder Jquery document.ready zum angegebenen Anker zu springen.

+0

Danke. Am Ende habe ich eine temporäre Datei erzeugt und öffne sie mit {0} = Quell-HTML-Datei, {1} = Anker:

0

Soweit ich das beurteilen kann, ist dies nicht möglich. Der Befehl:

open file:///path/to/file.html#test 

öffnet erfolgreich die angegebene HTML-Datei im System Standard-Browser, aber nicht passiert die #test Anker auf diese Datei. Das Gleiche mit einer http:// URL funktioniert jedoch. Mein Verdacht ist, dass die Apple Events, die verwendet wurden, um eine file:// Anfrage zu behandeln nur einen Dateinamen angeben, nicht eine URL, so dass der Anker nicht beibehalten werden kann.

+0

Richtig ... Ich bemerkte das gleiche. Es respektiert den Anker für http: // bu nicht file: ///. Ich habe versucht, den Anker mit% 23 (das ASCII-Äquivalent) zu ersetzen, aber das hat auch nicht funktioniert. –

2

Sie könnten auch Applescript-Befehlszeile verwenden (im Terminal):

osascript -e 'tell application "Safari" to open location "file://{full_path}/index.html#intro"' 

in denen {full_path} ist der absolute Pfad zur Datei.

+0

Danke dafür; hier ist ein [wrapper] (http://pastebin.com/8F0TZvrf) Ich habe gerade für OSX 'open' geschrieben, das wird das automatisch tun. – dubiousjim

Verwandte Themen