2017-01-23 40 views
0

我写一个bash script这是一个如下空间被当作命令

#!/bin/bash 

#getting the environment variable from commandline 
environment=$1 

echo $environment 

现在,当我与​​运行该脚本,我得到线以下错误

:命令未找到行2

:命令未找到行5

我看,这两个行的是空间和bash脚本从而给我一个错误

为了解决它,我写我的剧本为

#!/bin/bash 
# 
#getting the environment variable from commandline 
environment=$1 
# 
echo $environment 

但它看起来有点凌乱

有没有其他方法可以实现这一点。提前感谢您的帮助。

+0

你从什么地方复制呢?听起来像你可能有一些流浪的结局或沿着这些线 – arco444

+0

@ arco444不,我自己写了。行之间的空格是由于在键盘上按下'enter' –

+0

我同意@ arco444,我尝试了你的第一个代码片段,它对我来说工作正常。 – acornagl

回答

1

您的评论添加您的行使用DOS行末尾(\r\n)时的精度,当您使用od -xc file转储它时。为了避免这种情况,你应该确保你的编辑器使用Unix的末尾行(\n)。

要修复它在现有的文本文件,你可以使用tr

tr -d '\r' <dos_file> unix_file 
+0

感谢您的帮助:)真的很感激它 –