我有一個包含 n 個(n 已知)URL 的清單。如何從 URL 中刪除協定名稱?
例如:從https://xyz.com
,我只想獲取xyz.com
一部分。
答案1
使用 GNU grep 和 PCRE 匹配,
grep -oP 'https://\K\S+' file
輸出“https://”後面的非空格
答案2
答案3
這是一個簡單的 awk 呼叫:
$ awk -F// '{print $NF}' fileName
-F
指定字段分隔符號。$NF
列印最後一個字段。
您可能需要在 // 周圍使用雙引號。
答案4
使用切:有或沒有前綴均可,因為 cut 也印出不含分隔符號的行
echo 'https://myserver.com' | cut -d '/' -f 3
# prints myserver.com
您可以使用循環在文件中的多行上運行它:
for line in $(cat input_file.txt); do
echo "${line}" | cut -d '/' -f 3
done
從「cut」手冊頁 -f, --fields=LIST 中僅選擇這些欄位;也列印任何不包含分隔符號的行,除非指定了 -s 選項