>与>>的区别

echo hello > ./tmp	#表示创建文件并截断(覆盖)原来的文件内容
echo hello >>./tmp	#表示追加到文件

shell命令输出标准错误到文件

gcc 2>./tmp
cat ./tmp

--------------------------------
gcc: fatal error: no input files
compilation terminated.

Shell脚本中 用 反斜杠 \ 来保留变量不被解析

echo -e "#!/bin/sh\n# Start kde Desktop\nunset SESSION_MANAGER\nunset DBUS_SESSION_BUS_ADDRESS\nOS='uname -s'\nif [ \$OS = 'Linux' ]; then\n  case \"\$WINDOWMANAGER\" in\n    *gnome*)\n      if [ -e /etc/SuSE-release ]; then\n        PATH=\$PATH:/opt/gnome/bin\n        export PATH\n      fi\n      ;;\n  esac\nfi\nif [ -x /etc/X11/xinit/xinitrc ]; then\n  exec /etc/X11/xinit/xinitrc\nfi\nif [ -f /etc/X11/xinit/xinitrc ]; then\n  exec sh /etc/X11/xinit/xinitrc\nfi\n[ -r \$HOME/.Xresources ] && xrdb \$HOME/.Xresources\nxsetroot -solid grey\nxterm -geometry 80*24+10+10 -ls -title \"\$VNCDESKTOP Desktop\" &\ntwm &\nstartkde &\n" > "test"

山和山不相遇,人与人要相逢