在linux中生成windows的批處理
今天,開發給我發過來一堆配置檔案,要我替換生產系統中custom目錄下的對應配置檔案,我一看,我去,這麼多。用手動替換的方法會使人瘋掉的,還是寫個指令碼吧。
開發讓將上述配置檔案放到下面對應的目錄下:
在windows下寫指令碼,我不是太熟練,於是,準備在linux上用shell生成個指令碼,然後放到windows上面用。
隨便登入一臺linux機器,進行如下操作:
先看一下開發給的替換路徑
[root@dg ~]# cat /root/a.txt
\customs\waybillyundanUpdate.js
\customs\WEB-INF\waybillDistribution\waybillDistribution.jsp
\customs\WEB-INF\cycle\cycle_details.jsp
\customs\waybillDistribution\waybillDistribution.js
\customs\dataAndDictionary\uploadAttach.js
\customs\mark\showMark.js
\customs\plane\planeInfo.js
\customs\jointableapply\jointableapplyModify.js
\customs\plane\fetchplaneInfo.js
\customs\cycle\cycle_details.js
\customs\cycle\cycle.js
\customs\WEB-INF\classes\com\rj\web\utils\ReadcsvFile.class
\customs\WEB-INF\classes\com\rj\web\plane\dao\impl\PlaneDao.class
\customs\WEB-INF\classes\com\rj\web\plane\biz\impl\PlaneBiz.class
\customs\WEB-INF\classes\com\rj\web\plane\dao\IPlaneDao.class
\customs\WEB-INF\classes\com\rj\web\datadic\dao\impl\ImportConcludeDao.class
\customs\WEB-INF\classes\com\rj\quartz\job\dao\impl\CreateTimeTaskDao.class
\customs\WEB-INF\classes\com\rj\web\cycle\action\CycleAction.class
\customs\WEB-INF\classes\com\rj\web\cycle\biz\ICycleBiz.class
\customs\WEB-INF\classes\com\rj\web\cycle\biz\impl\CycleBiz.class
\customs\WEB-INF\classes\com\rj\web\cycle\dao\ICycleDao.class
\customs\WEB-INF\classes\com\rj\web\cycle\dao\impl\CycleDao.class
開始寫指令碼:
[root@dg ~]# cat update.sh
#!/bin/bash
for i in `cat /root/a.txt`
do
#用變數替換的方法,只擷取a.txt裡面每行的最後一個檔名
filename=`echo ${i##*'\'}`
#echo 裡面用了單引號,這樣可以去掉\的轉譯作用
echo 'move /Y D:\update\20150114\2015-01-14\'$filename 'D:\update\20150114'$i
done
好了,指令碼寫完了,下面我們執行看一下:
[root@dg ~]# sh update.sh
move /Y D:\update\20150114\2015-01-14\waybillyundanUpdate.js D:\update\20150114\customs\waybillyundanUpdate.js
move /Y D:\update\20150114\2015-01-14\waybillDistribution.jsp D:\update\20150114\customs\WEB-INF\waybillDistribution\waybillDistribution.jsp
move /Y D:\update\20150114\2015-01-14\cycle_details.jsp D:\update\20150114\customs\WEB-INF\cycle\cycle_details.jsp
move /Y D:\update\20150114\2015-01-14\waybillDistribution.js D:\update\20150114\customs\waybillDistribution\waybillDistribution.js
move /Y D:\update\20150114\2015-01-14\uploadAttach.js D:\update\20150114\customs\dataAndDictionary\uploadAttach.js
move /Y D:\update\20150114\2015-01-14\showMark.js D:\update\20150114\customs\mark\showMark.js
move /Y D:\update\20150114\2015-01-14\planeInfo.js D:\update\20150114\customs\plane\planeInfo.js
move /Y D:\update\20150114\2015-01-14\jointableapplyModify.js D:\update\20150114\customs\jointableapply\jointableapplyModify.js
move /Y D:\update\20150114\2015-01-14\fetchplaneInfo.js D:\update\20150114\customs\plane\fetchplaneInfo.js
move /Y D:\update\20150114\2015-01-14\cycle_details.js D:\update\20150114\customs\cycle\cycle_details.js
move /Y D:\update\20150114\2015-01-14\cycle.js D:\update\20150114\customs\cycle\cycle.js
move /Y D:\update\20150114\2015-01-14\ReadcsvFile.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\utils\ReadcsvFile.class
move /Y D:\update\20150114\2015-01-14\PlaneDao.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\plane\dao\impl\PlaneDao.class
move /Y D:\update\20150114\2015-01-14\PlaneBiz.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\plane\biz\impl\PlaneBiz.class
move /Y D:\update\20150114\2015-01-14\IPlaneDao.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\plane\dao\IPlaneDao.class
move /Y D:\update\20150114\2015-01-14\ImportConcludeDao.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\datadic\dao\impl\ImportConcludeDao.class
move /Y D:\update\20150114\2015-01-14\CreateTimeTaskDao.class D:\update\20150114\customs\WEB-INF\classes\com\rj\quartz\job\dao\impl\CreateTimeTaskDao.class
move /Y D:\update\20150114\2015-01-14\CycleAction.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\cycle\action\CycleAction.class
move /Y D:\update\20150114\2015-01-14\ICycleBiz.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\cycle\biz\ICycleBiz.class
move /Y D:\update\20150114\2015-01-14\CycleBiz.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\cycle\biz\impl\CycleBiz.class
move /Y D:\update\20150114\2015-01-14\ICycleDao.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\cycle\dao\ICycleDao.class
move /Y D:\update\20150114\2015-01-14\CycleDao.class D:\update\20150114\customs\WEB-INF\classes\com\rj\web\cycle\dao\impl\CycleDao.class
把上面生產的批處理,就可以貼上到windows DOS裡面直接用了:
完
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28916011/viewspace-1402341/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Windows批處理中的變數和值Windows變數
- 04 Windows批處理中的條件執行Windows
- 開啟windows批處理大門Windows
- java當中的批處理Java
- JDBC當中的批處理JDBC
- 07 Windows批處理之檔案操作Windows
- 05 Windows批處理中的字串和布林資料型別Windows字串資料型別
- Windows 批處理之DATE命令的使用方法Windows
- [20190219]變態的windows批處理6.txtWindows
- [20211207]變態的windows批處理10.txtWindows
- [20211011]變態的windows批處理9.txtWindows
- [20210510]變態的windows批處理7.txtWindows
- Flink 在又拍雲日誌批處理中的實踐
- 批處理指令碼來修復並開啟Windows 7中的Windows Defender防火牆指令碼Windows防火牆
- windows 批處理備份目錄指令碼Windows指令碼
- Windows10系統優化(批處理)Windows優化
- 08 Windows批處理之執行編譯後的程式Windows編譯
- [20180319]windows批處理檔案大小比較.txtWindows
- 修改windows遠端桌面連線埠-批處理Windows
- [20230208]windows批處理檢測隨身碟.txtWindows
- 批處理概述
- Apache Beam,批處理和流式處理的融合!Apache
- 03 Windows批處理的作用域和延遲擴充套件Windows套件
- 10 Windows批處理之呼叫例程和bat檔案WindowsBAT
- pytest 命令在 jenkins 批處理裡不能識別Jenkins
- 用批處理在指定目錄啟動Notebook
- Jenkins執行遠端Windows批處理的許可權問題JenkinsWindows
- 09 Windows批處理之標籤和無序執行Windows
- cmd批處理無法使用 提示windows找不到檔案Windows
- 在Linux中,如何使用awk和sed進行文字處理?Linux
- linux中的訊號處理與SROPLinux
- Windows使用批處理給手機批量安裝apk檔案WindowsAPK
- Windows登錄檔中修改UAC(使用者賬號控制)及批處理指令碼Windows指令碼
- 什麼是批處理
- Dynamics CRM 2013 批處理
- bat 批處理字串操作BAT字串
- window 批處理檔案
- DOM在Ahooks中的處理過程Hook
- 在Windows中,使用批處理(.bat)檔案可以透過呼叫命令來實現自動撥號連線。以下是透過批處理檔案實現PPPoE(撥號)連線的基本步驟:WindowsBAT