Linux shell 脚本 : echo only a char, 没有处理空格

标签 linux string shell char whitespace

我需要在 shell 脚本中使用一个命令,它逐个字符地写入字符串

找到了 2 个可以工作的版本:

1 使用剪切

还有另一个,使用这个:

echo -n ${line:$j-1:1}

其中 j 是 for 循环的变量,它的值为 true 字符串的长度 所以这将逐个字符地写入字符串,但不处理空格(“”) (我猜它没有写空字符,但我需要它们)

有人可以帮忙吗?

最佳答案

您需要引用扩展,以便 shell 在调用 echo 之前不会删除空格:

echo -n "${line:$j-1:1}"

关于Linux shell 脚本 : echo only a char, 没有处理空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20362130/

相关文章:

linux - 从管道读取数据并写入标准输出,中间有延迟。也必须处理二进制文件

java - 拆分功能不起作用

shell - 是否可以从ansible角色/文件目录运行shell脚本?

linux - 尝试以二进制形式输出 Openssl Hash 以比较位

c - 共享内存: segmentation fault core dumped

Java 字符串操作 ReplaceAll

c# - String.Concat(String, String, String, String) 有什么意义

linux - Linux服务器中的文件如何按名称分类?

c - 我的 char vector 在每个位置保存相同的值

linux - 如何递归地将文件从文件夹发送到 linux 控制台中的命令?