日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux shell multifile content replace with sed

發布時間:2023/11/29 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux shell multifile content replace with sed 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#!/bin/bash# Linux shell multifile content replace with sed # 聲明: # 本源代碼主要是利用兩份(中、英文)具有相同鍵值對的json數據,對html內的中文進行 # 自動化文本替換的代碼。 # # 2015-11-20 晴 深圳 南山平山村 曾劍鋒# 得到中文部分 sed -n "/\"/p" SimpChinese.txt | grep -Po -e "\"\s?:\s?.*" | grep -Po -e ":\s?.*" | grep -o -e "\".*\"" > SimpChinesewhile read chinese do# 獲取中文對應的id部分id=`grep "$chinese" SimpChinese.txt | grep -o -e "^.*:" | grep -o -e "\".*\"" | head -n 1`# 由id獲取英文的部分english=`grep "$id" English.txt | grep -Po -e "\"\s?:\s?.*" | grep -Po -e ":\s?.*" | grep -o -e "\".*\"" | head -n 1`# 剔除雙引號chinese=${chinese:1:-1}english=${english:1:-1}# 去掉兩邊的空格#chinese=`echo $chinese | sed "s/ *$//g"| sed "s/^ *//g"`# 追加到文件末尾echo "$chinese===$english" >> translate.txtdone < SimpChinese# 將有些不在json鍵值對里的中文翻譯加入translate.txt中 cat manualTranslate.txt >> translate.txtwhile read ChEn do# 獲取中文,由于有些中文字符串有'/',并對其進行處理,主要是為了處理sed中'/'的特殊性chinese=`echo $ChEn | grep -o "^.*===" | sed "s/===//" | sed "s/ *$//g" | sed "s/^ *//g" | sed "s^\/^\\\\\\\\/^g"`english=`echo $ChEn | grep -o "===.*$" | sed "s/===//" | sed "s^\/^\\\\\\\\/^g"`# 匹配并修改html頁面,[::!!??]是根據html中字符串的特征添加的內容sed -i -e "s/>\s*${chinese}[::!!??]\s*</>${english}</" rootfs/index.htmsed -i -e "s/>\s*${chinese}[::!!??]\s*</>${english}</" rootfs/set.htmsed -i -e "s/>\s*${chinese}[::!!??]\s*</>${english}</" rootfs/html/*done < translate.txt# 部分English.txt # { # "Right Limit" : "Set Right Limit", # "Set Failed!": "Failed to set!", # "Ok" : "Ok", # "Cancel" : "Cancel", # "Set Path" : "StoragePath", # "Set PTZ" :" PTZ Settings ", # "Auto-Scan" : "Scan", # "Left Limit": "Set Left Limit", # "Add" : "Add ", # "Preset": "Preset", # "Path" : "Path", # "Browse":"Choose", # "Set Succeeded!" :"Set successfully!", # "Delete" : "Delete" # }# 部分SimpChinese.txt # { # "Set Path" : "設置存儲路徑", # "Path" : "路徑", # "Browse" : "選擇", # "Set Succeeded!" : "設置成功!", # "Left Limit" : "設置左邊界 ", # "Right Limit" : "設置右邊界 ", # "Preset" : "預置點 ", # "Cancel" : "取消", # "Set PTZ" : "云臺設置 ", # "Auto-Scan" : "線性掃描 ", # "Delete" : "刪除 " # "Add" : "添加 ", # "Set Failed!" : "設置失敗!", # "Ok" : "確定", # }

?

總結

以上是生活随笔為你收集整理的Linux shell multifile content replace with sed的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。