【问题标题】:Why do these two commands show different character count using bash为什么这两个命令使用 bash 显示不同的字符数
【发布时间】:2022-10-02 00:01:07
【问题描述】:

嗨,我正在尝试学习 bash 脚本,我只想获取变量的字符数。我尝试使用这两种不同的方法来做到这一点,但我不明白为什么我会得到一个字符的差异?谢谢您的帮助。

字符=\"ABCDEFGHIJKLMNOPQRSTUVWXYZ\"

回声 ${#chars}
echo $(echo \"$chars\" | wc -c)

26
27

  • echo 附加一个换行符,除非用 -n 调用,因此多了一个字符

标签: bash


【解决方案1】:

在括号内你写

echo "$chars" | wc -c

你要

echo -n "$chars" | wc -c

-n 抑制尾随换行符。 就目前而言,您在之后写了一个额外的字符 26 个字母,wc 忠实地计算它。


试试这个看看-n 标志的效果。

echo -n abc; echo -n def
echo    uvw; echo    xyz

【讨论】:

    猜你喜欢
    • 2019-12-18
    • 1970-01-01
    • 1970-01-01
    • 2017-12-13
    • 1970-01-01
    • 2018-11-19
    • 2011-06-14
    • 2015-04-10
    • 1970-01-01
    相关资源
    最近更新 更多