linux - 在脚本 shell linux 中使用 Ls -l 并分隔结果

标签 linux bash shell typescript ls

当我执行我制作的这个脚本时

#!/bin/bash
for object in $(ls -l)
do
echo $object
done

显示如下
ls -l script KO

当我执行脚本时,我希望得到这样的结果
ls -l script OK

我尝试了很多事情,但没有成功 拜托我需要你的帮忙 预先感谢您

最佳答案

您想要逐行读取ls -l 的输出;为此,请替换该行

for object in $(ls -l)

ls -l|while read object

并改变

echo $object

echo "$object"

(保留空格)。

<小时/>

如果你坚持使用for,你可以这样做:

readarray -t < <(ls -l)
for object in "${MAPFILE[@]}"; do echo "$object"; done

关于linux - 在脚本 shell linux 中使用 Ls -l 并分隔结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48093846/

相关文章:

linux - 从文件中获取一行并将其作为列添加到另一个文件中

shell - 从外部脚本调用内部脚本

linux - 如何减少以下 awk 语句中的管道之一

linux - 历史命令在终端中有效,但在作为 bash 脚本编写时无效

linux - 需要有关 Linux Shell 脚本的帮助以查找字符串模式

linux - Linux (Ubuntu) 上的 PyInstaller——在控制台中打开可执行文件

python - 命令 'x86_64-linux-gnu-gcc' 失败,退出状态为 1

linux - 以自然方式对制表符分隔的文本文件的字母数字和数字列进行排序

bash - "declare +x"与 "declare -x"是什么意思?

regex - 从 shell 脚本中将文件部分提取到变量