我最近在同一論壇上提出了一個問題,並找到了解決方案。不幸的是,它必須轉換成UNIX。問題是合併來自csv文件的行。每行應以分號(;)結尾,並且如果它未將下一行組合到它中,則再次找到分號。將合併行批處理腳本轉換爲shell
爲我工作的解決方案是
@echo off
setlocal disableDelayedExpansion
set "ln="
for /f delims^=^ eol^= %%i in (myfile.txt) do (
set "var=%%i"
setlocal enableDelayedExpansion
if "!var:~-1!"==";" (echo !var!>>temp.csv) else (<nul set /p ="!var!">>temp.csv)
endlocal
)
是否可以轉換爲UNIX腳本?
鏈接到原來的職位是:Merge line with the next line if last character is a semicolon using batch file
是的,這是可能的。你有什麼嘗試? – chepner
沒有「Unix腳本」這樣的東西。有腳本語言,shell,流水線實用程序和多種編程語言。做一些研究並編寫一些代碼,那麼你將能夠更好地提出良好的Stack Overflow問題。 –