如何使用bash延续线?
我意识到你可以这样做:
- echo "continuation \
- lines"
- >continuation lines
但是,如果你有缩进的代码,它不能很好地工作:
- echo "continuation \
- lines"
- >continuation lines
这是你可能想要的
- $ echo "continuation"\
- > "lines"
- continuation lines
如果这创建了两个参数echo并且你只想要一个,那么让我们看看字符串连接。在bash中,将两个字符串相邻放置连接:
- $ echo "continuation""lines"
- continuationlines
因此,没有缩进的连续行是分割字符串的一种方法:
- $ echo "continuation"\
- > "lines"
- continuationlines
但是当使用缩进时:
- $ echo "continuation"\
- > "lines"
- continuation lines
你得到两个参数,因为这不再是一个连接。
如果你想要一个跨越线的单个字符串,同时缩进但没有获得所有这些空格,你可以尝试的一种方法是将连续行切开并使用变量:
- $ a="continuation"
- $ b="lines"
- $ echo $a$b
- continuationlines
这将允许你有干净缩进的代码,代价是额外的变量。如果你使变量局部,它不应该太糟糕。