在shell编程命令中,换行符号是什么?
来源:百度知道 编辑:UC知道 时间:2024/09/23 12:15:45
反引号?是这样子:abc`\n`abc输入,还是‘abc\nabc`这样输入的?我都试过了但总是出示"command not found"这样的提示,请告诉我正确的输入方法,行不!
不应该用单引号或双引号吧!
应该用反引号(就是ESC下面那个键),以前我也犯过类似的毛病。
因为反引号在shell中的字符串会被解释成为命令。
还有echo的-e选项是对转义字符进行解析,默认的是不解析的。
如:
echo -e "ab\nab"
输出:
ab
ab
换行方式
在早期的打印机时代,开始新的一行要占用两个字符的时间。如果到了一行的结尾处,你要快速回到新的一行的开头,需要打印针头在纸面上飞快地掠过,常常会在纸面上留下污点。解决这个问题的办法就是,用两个字符:一个字符<Return>来移到第一列,另一个字符<Line feed>来新增一行。计算机产生以后,存储较为昂贵,在如何解决回车换行这个老问题上,人们产生了不同的意见。UNIX人认为在到达一行的结尾时新增一行<Line feed> (LF),而Mac人则认同<Return> (CR)的解决办法,MS则坚持古老的<Return><Line feed> (CRLF)的方法。这就意味着如果你将一个文件从一个系统转移到另一个系统,就面临着回车换行的问题。而Vim编辑器则会自动的认出这种文件格式方面的区别,并做出相应处理。
fileformats选项,用于处理文件格式问题。以下命令,告诉vim将UNIX文件格式做为第一选择,而将MS-DOS的文件格式做为第二选择:
:set fileformats=unix,dos
检测到的文件格式会被存放在fileformat选项中,我们可以用以下命令来查询:
:set fileformat?
我们还可以利用fileformat选项,来转换种文件格式。例如,使用以下命令将名为readme.txt的MS-DOS格式的文件,转换为UNIX格式的文件。
:set fileformat=unix
在默认情况下,Vim认为文件是由行组成的,并且文件最后一行是以<EOL>为结束符的。如果你想设置文件以<EOL>结束符结尾,则可以用以下命令:
:set endofline<