我的Linux存儲庫文件包含一個鏈接,該鏈接目前使用的是帶端口號的http來指向它的存儲庫。如何使用sed編輯url字符串
的BaseURL = http://host.domain.com:123/folder1/folder2
我現在需要一種方法來替換URL使用https沒有端口或不同的端口。 我還需要將服務器名稱從host.domain.com更改爲host2.domain.com的可能性
所以我的想法是使用sed搜索http的開頭,直到第一個/在2 //之後捕獲其中的任何內容,並使我能夠更改服務器名稱端口或http的用法。
林現在使用此代碼(使用回波即時通訊只是爲示例):
的例子示出了如何2例,其中一個時間我有一個鏈接http和端口123轉換爲https和第二時間的其他方式 和這兩個代碼我一般使用相同的sed原因。
WANTED_URL="https://host.domain.com"
echo 'http://host.domain.com:123/folder1/folder2' | sed -i "s|http.*://[^/]*|$WANTED_URL|"
OR
WANTED_URL="http://host.domain.com:123"
echo 'https://host.domain.com/folder1/folder2' | sed -i "s|http.*://[^/]*|$WANTED_URL|"
是正確的方式這樣做?
就是爲什麼我要抓住它,直到正斜槓,並從HTTP,所以我總是需要只添加完整的URL(有或無端口) –
既沒有答案的爲你工作? –
是兩種方式都可以 –