没有使用“cat”命令进行换行

3

这段代码应该从wget2.html读取内容并输出链接,但是它输出的结果没有换行。我该如何强制使用cat添加换行符?

chksitename=$(cat wget2.html | grep -e "$sitename" | sed -e "s/^.*\("$sitename".*jpg\).*$/\1/g" | sort | uniq)
echo $chksitename

1
您希望在哪里添加换行符? - sarnold
1
UUoC,但你实际上想要实现什么? - johnsyweb
3
顺便说一下,不要使用cat myfile | grep pattern这种写法。请改用grep pattern myfile - Michał Šrajer
3个回答

15

这应该是被接受的答案。 - Ich

1

我认为你可以用一个 sed 替换你的 cat/grep/sed

sed -e -n "/$sitename/ s@^.*\("$sitename".*jpg\).*$@\1@pg" wget.html

你可以将 sort | uniq 替换为 sort -u


0

你可以尝试:

echo $chksitename | tr ' ' '\n'

这是一种非常有趣的做法;它确实有效,但不太正统。 - Jonathan Leffler
我在寻找将折叠的JSON设置为环境变量时发现了这个方法,我很喜欢它。我的用法是:export TEST=$(cat test.json | tr -d '\n'| tr -d ' ') - ryanjdillon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接