试图从shell打开一个网页,但字符串断开

时间:2014-01-13 01:08:17

标签: shell url

我正在尝试使用shell中的“open”命令打开一系列URL。

打开http://www.oecd-ilibrary.org/country-statistical-profile-australia-2013-2_5k9d5vhlgxkf.xls;jsessionid=lzfo8lhxtes0.x-oecd-live-02?contentType=/ns/KeyTable,/ns/StatisticalPublication&itemId=/content/table/20752288-table-aus&containerItemId=/content/table/20752288-table-aus&accessItemIds=&mimeType=application/vnd.ms-excel

问题是'.xls之后;在URL中,我认为shell认为这是URL的结尾,并尝试打开页面,并打开错误的页面。这是我的猜测,因为当我输入'echo'时,我得到了:

[9] 4813
[10] 4814
[11] 4815
[12] 4816
[7]   Done                    containerItemId=/content/table/20752288-table-aus
[8]   Done                    accessItemIds=
[9]   Done                    jsessionid=lzfo8lhxtes0.x-oecd-live-02?contentType=/ns/KeyTable,/ns/StatisticalPublication
[10]   Done                    itemId=/content/table/20752288-table-aus

有没有办法确保使用整个字符串?

1 个答案:

答案 0 :(得分:1)

我不知道你使用的是什么shell,但是分号通常用于分隔在同一行上给出的多个命令。

您可以使用反斜杠转义分号,也可以将整个字符串放在双引号"之间。

<强>示例:

这将执行两个不同的回声,一个回复string1,另一个回复string2

echo string1; echo string2

这将以string1; echo string2执行一个回显,因为分号是用反斜杠转义的。

echo string1\; echo string2

这也将执行一个echo string1; echo string2,因为整个字符串在双引号之间:

echo "string1; echo string2"