3 回答

TA貢獻1786條經驗 獲得超11個贊
使用moreWindows NT和更高版本中包含的命令,實際上可以非常輕松地完成此操作。轉換input_filename包含UNIX EOL(行尾)\n到output_filename其中包含的Windows EOL \r\n,只是這樣做:
TYPE input_filename | MORE /P > output_filename
該more命令具有您可能不知道的其他格式設置選項。奔跑more/?學習其他more可以做什么。

TA貢獻1893條經驗 獲得超10個贊
您可以在沒有VBScript中的其他工具的情況下執(zhí)行此操作:
Do Until WScript.StdIn.AtEndOfStream
WScript.StdOut.WriteLine WScript.StdIn.ReadLine
Loop
將以上各行放入文件中unix2dos.vbs,然后像這樣運行:
cscript //NoLogo unix2dos.vbs <C:\path\to\input.txt >C:\path\to\output.txt
或像這樣:
type C:\path\to\input.txt | cscript //NoLogo unix2dos.vbs >C:\path\to\output.txt
您也可以在PowerShell中執(zhí)行此操作:
(Get-Content "C:\path\to\input.txt") -replace "`n", "`r`n" |
Set-Content "C:\path\to\output.txt"
可以進一步簡化為:
(Get-Content "C:\path\to\input.txt") | Set-Content "C:\path\to\output.txt"
上面的語句無需顯式替換即可工作,因為Get-Content在任何類型的換行符(CR,LF和CR-LF)中隱式地拆分了輸入文件,并Set-Content在將輸入數(shù)組寫入Windows之前將其與Windows換行符(CR-LF)連接在一起。

TA貢獻1805條經驗 獲得超10個贊
我當時正在處理CRLF問題,所以我決定構建一個非常簡單的轉換工具(在NodeJS中):
這是NodeJS EOL轉換器CLI
因此,如果您安裝了帶有npm的NodeJS,則可以嘗試:
npm i -g eol-converter-cli
eolConverter crlf "**/*.{txt,js,java,etc}"
可以使用Glob regex(與shell中相同的regex)動態(tài)配置路徑。
因此,如果可以使用NodeJS,它非常簡單,可以集成此命令將整個工作區(qū)轉換為所需的行尾。
- 3 回答
- 0 關注
- 794 瀏覽
添加回答
舉報