導航:首頁 > 操作系統 > linuxshell字元替換

linuxshell字元替換

發布時間:2022-06-23 05:51:16

Ⅰ shell linux 命令 替換和寫入

cat A|grep "abcdef" >>B
sed -i 's/^.*abcdef/#&/g' A
測試了下,可以

Ⅱ linux shell替換最後一個字元

[seesea@UC~]$catfile
acccddd
xxxyzzz
qw
[seesea@UC~]$sed-r's/\([^]*)$/1/'file
acccddd
xxxyzzz
qw

[seesea@UC~]$sed-r's/(.*)\/1/'file
acccddd
xxxyzzz
qw

Ⅲ Linux下的shell編程 如何替換文件中的內容

shell編程中替換文件中的內容用到四個命sed,find
,grep,awk
下面是三種使用替換的方法
方法一:find
-name
'要查找的文件名'
|
xargs
perl
-pi
-e
's|被替換的字元串|替換後的字元串|g'下面這個例子就是將當前目錄及所有子目錄下的所有pom.xml文件中的」http://repo1.maven.org/maven2「
替換為」http://localhost:8081/nexus/content/groups/public「.
find
-name
'pom.xml'
|
xargs
perl
-pi
-e
's|http://repo1.maven.org/maven2|http://localhost:8081/nexus/content
/groups/public|g'這里用到了Perl語言,
perl
-pi
-e
在Perl
命令中加上-e
選項,後跟一行代碼,那它就會像運行一個普通的Perl
腳本那樣運行該代碼.
從命令行中使用Perl
能夠幫助實現一些強大的、實時的轉換。認真研究正則表達式,並正確地使用,將會為您省去大量的手工編輯工作。
find
-name
'pom.xml'
|
xargs
perl
-pi
-e
's|http://repo1.maven.org/maven2|http://localhost:8081/nexus/content/groups/public|g'
方法二:Linux下批量替換多個文件中的字元串的簡單方法。用sed命令可以批量替換多個文件中的字元串。
用sed命令可以批量替換多個文件中的
字元串。
sed
-i
"s/原字元串/新字元串/g"
`grep
原字元串
-rl
所在目錄`
例如:我要把mahuinan替換
為huinanma,執行命令:
sed
-i
"s/mahuinan/huinanma/g"
'grep
mahuinan
-rl
/www'
這是目前linux最簡單的批量替換字元串命令了!
具體格式如下:
sed
-i
"s/oldString/newString/g"
`grep
oldString
-rl
/path`
實例代碼:sed
-i
"s/大小多少/日月水火/g"
`grep
大小多少
-rl
/usr/aa`
sed
-i
"s/大小多少/日月水火/g"
`grep
大小多少
-rl
./`
方法三:在日程的開發過程中,可能大家會遇到將某個變數名修改
為另一個變數名的情況,如果這個變數是一個局部變數的話,vi足以勝任,但是如果是某個全局變數的話,並且在很多文件中進行了使用,這個時候使用vi就是
一個不明智的選擇。這里給出一個簡單的shell命令,可以一次性將所有文件中的指定字元串進行修改:
grep
"abc"
*
-R
|
awk
-F:
'{print
$1}'
|
sort
|
uniq
|
xargs
sed
-i
's/abc/abcde/g'
批量替換
配置文件中的IP:
grep
"[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"
*
-R
|
awk
-F:
'{print
$1}'
|
sort
|
uniq
|
xargs
sed
-i
's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/172\.0\.0\.1/g'

Ⅳ SHELL腳本對LINUX下指定文本文件的滿足條件的行的特定位置字元串進行替換

YDAY=$(date+"%Y%m%d"-d"-1days")
TDAY=$(date+"%Y%m%d")
awk-vYDAY=$YDAY-vTDAY=$TDAY'
NR==1{
if(substr($0,20,8)==YDAY)
$0=substr($0,1,19)TDAYsubstr($0,28)
if(substr($0,34,8)==YDAY)
$0=substr($0,1,33)TDAYsubstr($0,42)
}
/^TH/{
if(substr($0,21,8)==YDAY)
$0=substr($0,1,20)TDAYsubstr($0,29)
}
{print}'文件名

Ⅳ linux shell如何將本身是變數字元串日期批量替換

一條語句就夠了:
cat 1.txt | sed -r "s/[0-9]{8}/`date -d yesterday +%Y%m%d`/" > 2.txt

Ⅵ linux如何替換文件指定行的特定位置字元串

可以通過Shell腳本替換字元串方式,如果知道第幾行,格式如下:

<string id="str_ig_ghjjk">hello</string>

字元串內容可能是任意字元串,如何把>和<中間的字元串替換為我的字元串比如world

具體例子:
比如要替換第128行
sed -i '128s/>.*</>world</' test.txt
這樣子

Ⅶ linux shell中 sed 文件的1到7行行首有指定字元串的整行替換為為指定內容.

sed '1,7s/^字元串.*/替換內容/' file

不要隨便加 -i 參數。先確定好在加。

Ⅷ linux替換文件中的字元串怎麼使用

可以通過shell腳本替換字元串方式,如果知道第幾行,格式如下:
hello
字元串內容可能是任意字元串,如何把>和<中間的字元串替換為我的字元串比如world
具體例子:
比如要替換第128行
sed
-i
'128s/>.*world
'
test.txt
這樣子</pre
評論
0
0
載入更多

Ⅸ linux 下用shell sed替換文本中的字元串

sed是行編輯器,用這個工具非常困難。可以參考以下腳本:
#!/bin/bash
while
read
line
do
if
echo
$line
|
grep
'Hour$'
>/dev/null;
then
echo
$line
|
tr
-d
'\n'
else
echo
$line
fi
done
<
$1
1,將上面腳本保存為fuck.sh
2,chmod
755
fuck.sh
3,./fuck.sh
file

Ⅹ linux shell,替換文本

sed's/(192.168.2.3)d+/12048/'a.txt

替換字元串裡面1代表前面第一個括弧裡面的內容.

d+表示多個連續數字.

閱讀全文

與linuxshell字元替換相關的資料

熱點內容
金聖嘆水滸傳pdf 瀏覽:501
安卓官換新機是什麼意思啊 瀏覽:922
java如何分頁 瀏覽:558
如何查找加密的視頻 瀏覽:742
單片機lcd漢字顯示 瀏覽:878
能夠識別中文的編譯器 瀏覽:62
androidlayout注釋 瀏覽:959
重啟手機命令 瀏覽:838
程序員那麼可愛男女主是誰 瀏覽:492
文件如何上傳到自己的伺服器 瀏覽:401
你用什麼app 瀏覽:224
安卓平板用什麼優化軟體 瀏覽:747
centos重新編譯程序 瀏覽:335
cocoapods命令 瀏覽:906
androidusb卸載 瀏覽:143
linux解壓縮軟體 瀏覽:144
ppt及備注轉pdf 瀏覽:564
ssh下載文件命令 瀏覽:821
程序員考MBA 瀏覽:265
國外加密鎖是什麼樣子 瀏覽:229