输出换行
echo 自动换行
$ echo 'hello'
hello
$
printf 增加\n换行
$ printf "hello %s\n" word!
hello word!
$
输出不换行
echo -n
$ echo -n 'hello'
hello$
echo 解析转移\c
$ echo -e 'hello\c'
hello$
printf本身不换行,不加\n即可
$ printf 'hello'
hello$
shell脚本踩坑之一:sh文件里的换行 command not found
shell脚本有时候一行太长,想换行写,方法和python一样,非常简单,在行末加斜线\即可。
需要注意,\后面不要再有任何字符,空格也不行,不然就会换行失败,后面的内容会被认为是重新开始了一行。
比如指定GPU,换行写了
python main.py \
--gpustart 0 \
--gpus 2 \
如果“–gpustart 0 \”的斜线后面多了一个空格,”–gpus 2″就不会被算到”python mian.py –gpustart 0″同一行,结果就是”gpus 2″指定失败,还被认为是单独的指令。
这种东西不会自己报错说换行多了个空格啊喂,但是会提示 train.sh: line 2: –gpus: command not found
遇到这种 command not found,注意先检查是不是换行时候\加了空格。
如果非常不幸,指定参数时候,这个参数名自己就是个有效的command,那可能有别的报错,等我遇到了再来添加
总结
到此这篇关于linux shell输出换行的文章就介绍到这了,更多相关shell输出换行内容请搜索aitechtogether.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持aitechtogether.com!