批處理以當前時間為檔名建立檔案
批處理以當前時間為檔名建立檔案
批處理建立空檔案
有時候,需要建立以當前時間命名的檔案,手動輸入當然可以,但是有更省心的方法嗎?
假設我是 windows 作業系統,開啟命令列。
輸入以下命令試試:
echo %date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%_%time:~6,2%
輸出類似:
2019_06_24_22_22_13
如果不想要秒,則輸入:
echo %date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%
輸出類似:
2019_06_24_22_23
既然都到這一步了,那修改一下就可以達到目的了。
比如建立以日期命名的 .md 檔案。
cd. >%date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%.md
這時候會發現當前目錄下多了一個 2019_06_24_22_45.md
檔案,而且是空檔案。
上面的命令表示把命令cd.
的輸出重新定向到 xxx.md 檔案,cd.
表示改變當前目錄為當前目錄,即等於沒改變,而且此命令不會有輸出,所以就建立了沒有內容的空檔案。
其實建立空檔案的方法還有很多:
1、copy nul a.txt
nul表示空裝置,從概念上講,它不可見,存在於每個目錄中,可以把它看成一個特殊的“檔案”,它沒有內容;此例子表示將空裝置複製到 a.txt,同樣建立了沒有內容的空檔案。
2、type nul>a.txt
此例子表示顯示空裝置的內容,並寫入到 a.txt。
3、echo a 2>a.txt
“2”表示錯誤輸出的控制程式碼,此例中沒有錯誤輸出,所以建立了沒有內容的空檔案。
其實“>”預設重定向到控制程式碼1,即標準輸出控制程式碼。比如 cd.>a.txt
,其實就是cd. 1>a.txt
。
其實,控制程式碼3到9也可以使用在本例中,它們是未經定義的控制程式碼,也不會有輸出,如
echo a 3>a.txt
我們們實操一下。
D:\>copy nul a.txt
已複製 1 個檔案。
D:\>type nul>b.txt
D:\>echo a 2>c.txt
a
D:\>echo a 3>d.txt
a
根據上面的實驗,type nul>b.txt
這個方法比較好,因為命令列沒有輸出,很清爽。
參考資料
相關文章
- 查詢當前以txt副檔名且建立時間1天前的檔案,然後將其刪除
- 批處理獲得系統當前時間之前n天的時間
- window 批處理檔案
- 批處理檔案命令
- Windows批處理檔案Windows
- bat批處理檔案BAT
- bat批處理使用ren批次重新命名檔案,比如批次去掉檔名稱的前4位BAT
- windows刪除幾天前檔案的批處理命令Windows
- 批處理 求得到當前資料夾下指定字尾的檔名的各種形式
- dos命令複製當天生成的以日期為檔名的檔案
- 用批處理實現的刪除特定時間以前的檔案
- 切換IP批處理檔案
- Python批處理:檔案操作Python
- Windows bat批處理刪除指定N天前的檔案WindowsBAT
- oracle 中使用批處理檔案,同時執行,多個.sql檔案。OracleSQL
- 把當前目錄檔名輸出到一個檔案
- 07 Windows批處理之檔案操作Windows
- 將DOS批處理檔案轉換為Shell指令碼指令碼
- 檔案下載檔名亂碼處理
- Linux下修改檔案建立時間(修改檔案更改時間)Linux
- 批處理檔案 bat 後臺執行BAT
- windows刪除檔案的批處理操作Windows
- 用批處理檔案執行備份
- 批處理檔案(bat檔案)註冊dll批量註冊dllBAT
- windows批處理之五-for語句中的檔名擷取Windows
- 批處理檔備份oracleOracle
- 處理檔名內含有特殊字元的檔案 (轉)字元
- Jenkins執行批處理檔案失敗Jenkins
- Win10系統執行bat批處理檔案提示檔案以管理員身份執行如何解決Win10BAT
- 批處理檔案:將目錄下所有的jar檔案都加到CLASSPATHJAR
- 前後端處理流檔案請求後端
- c++ 獲取檔案建立時間、修改時間、訪問時間、檔案內容長度C++
- 批處理 壓縮zip 並過濾部分檔案
- 用批處理檔案編譯並執行java編譯Java
- 10 Windows批處理之呼叫例程和bat檔案WindowsBAT
- 批量處理時臨時增加回滾表空間臨時表空間檔案
- iOS中獲取當前時間與簡單的處理iOS
- Linux dd 在當前目錄建立檔案系統Linux