[问题] bash 空白行导致 command not found

楼主: sanbis (方正無法達成,那麼有沒H)   2020-11-13 10:42:24
目前 TEST.sh 的内容如下
#!/bin/bash
WORKDIR=backup
echo $WORKDIR
echo "备份程序"
echo "根目录"
但是在执行 sh TEST.sh 后输出的结果为
: command not found
backup
备份程序
: command not found
根目录
中间为了格式打上去的空行被当成无效指令
导致输出 : command not found
想请问一下有没有人遇过这种情况
以及这个要怎么处理?
作者: bitlife (BIT一生)   2020-11-13 10:49:00
先检查是否有全角空白
作者: tomsawyer (安安)   2020-11-13 15:01:00
windows换行?
作者: HMKRL (HMKRL)   2020-11-14 00:23:00
应该是有不是空白的东西混进去
作者: LinBuoRen (林博仁)   2020-11-14 07:21:00
dos2unix
作者: newversion (海纳百川)   2020-11-14 12:14:00
xxd TEST.sh 赔上来看看
作者: ucrxzero (RX-0)   2020-11-14 13:36:00
Backup被当成指令了啦
作者: rickieyang (Rickie Yang)   2020-11-15 00:22:00
作者: ucrxzero (RX-0)   2020-11-15 02:18:00
你bash是不是连到dash
作者: holishing   2020-11-15 19:06:00
set -x 追追看?然后在之前不管有没有 dos 换行都先 dos2unix
作者: Bellkna (柔弱气质伪少女)   2020-11-16 19:23:00
sed应该也可以处理这个
作者: Gold740716 (项为之强)   2020-11-17 12:27:00
sed 's/\r$//'

Links booklink

Contact Us: admin [ a t ] ucptt.com