dos2unix.sh

来自「这是一个开放源代码的与WINNT/WIN2K/WIN2003兼容的操作系统」· Shell 代码 · 共 34 行

SH
34
字号
#!/bin/sh

es=1
if [ $# -eq 0 ] ; then
	exec tr -d '\015\032'
elif [ ! -f "$1" ] ; then
	echo "Not found: $1" 1>&2
else
	for f in "$@" ; do
		if tr -d '\015\032' < "$f" > "$f.tmp" ; then
			if cmp "$f" "$f.tmp" > /dev/null ; then
				rm -f "$f.tmp"
			else
				touch -r "$f" "$f.tmp"
				if mv "$f" "$f.bak" ; then
					if mv "$f.tmp" "$f" ; then
						rm -f "$f.bak"
						es=$?
						echo "  converted $f"
					else
						rm -f "$f.tmp"
					fi
				else
					rm -f "$f.tmp"
				fi
			fi
		else
			rm -f "$f.tmp"
		fi
	done
fi

exit $es

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?