linux - 如何在 bash 的数组中仅存储唯一值?

标签 linux bash ubuntu

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .


1年前关闭。







Improve this question




我正在寻找一种方法来从具有相似数字的不同名称的文件中提取数字,并仅在数组中存储唯一值而不是重复值。例如,我有像 12-fil1.txt 这样的文件名, 12-file2.txt , 24-file1.txt , 24-file2.txt .所以我的数组将有值 array=(12, 24) .如果这是一个愚蠢的问题,我深表歉意,但我是 bash 新手,所以我很难弄清楚如何做到这一点。

最佳答案

使用关联数组轻松完成

declare -A array

for file in *.txt; { array[${file%-*}]=''; }
echo ${!array[@]}
更新。如果 declare -A array删除然后我们有一个简单的索引数组,在这种情况下也是可行的,因为我们只需要存储数字,但我们将它们存储为索引而不是数据。

关于linux - 如何在 bash 的数组中仅存储唯一值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62698879/

相关文章:

python - ssh 使用 Python 限制命令

linux - bash中删除长度小于2的单词

ruby - 执行 rvm 时获取 "Warning! PATH is not properly set up"使用 2.0.0 --default

Apache多个本地虚拟主机

linux - 使用 yacc 和 lex 的 Linux 命令行语法

c - Break 语句在循环中不起作用 (gcc)

c - 为什么我不能用这个c代码杀死进程组?

javascript - ElectronJS npm start/bash : electron-forge: command not found

python - 为网络存储服务开发 gvfs 适配器?