我正在使用带有 bash shell 的 cygwin 版本的 expand 。
当调用用(空格)expand
替换所有时,所有换行符结尾也从 更改为。\t
expand
\n
\r\n
我正在使用以下 bash 脚本:
#!/bin/bash
BRANCH=$1
TMPFILE=/tmp/temporaryExpander
EXTENSIONS=(
cpp
cxx
h
java
txt
cs
csproj
vcproj
sln
csdproj
)
function TabsToSpacesForFile
{
relativeFilePath=$1
absoluteFilePath=`pwd`/$relativeFilePath
expand --tabs=4 $absoluteFilePath > $TMPFILE
cat $TMPFILE > $absoluteFilePath
}
for project in `ls $BRANCH`
do
for extension in "${EXTENSIONS[@]}"
do
find $BRANCH/$project -name "*\.${extension}" | while read file; do TabsToSpacesForFile "$file"; done
done
done