歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

用sed實現路徑替換

用sed實現路徑替換   寫腳本,要實現文件覆蓋。比如,有一個文件/home/a/1.xml,
想/home/b目錄下,如果b目錄下存在同名文件就覆蓋。可以這樣寫腳本:   www.2cto.com   1 #!/bin/sh 2   3 SRC_PATH=/home/a 4 DST_PATH=/home/b 5   6 src_file=${SRC_PATH}/1.xml 7 dst_file=`echo ${src_file} | sed "s:${SRC_PATH}:${DST_PATH}:g"` 8   9 cp -f ${src_file} ${dst_file}   當然了,也可以用dirname和basename實現,用這個小例子主要是為了實驗sed的用法。   一般情況下,sed 's/pattern/pattern/flag' 是用/來進行分隔的。但這裡的源字符串和替換字符串中,都帶有字符/,如果再用/進行分隔,就會產生沖突。所以,改用了:進行分隔。
Copyright © Linux教程網 All Rights Reserved