简单的bash脚本列出了所有扩展

时间:2018-12-02 03:22:17

标签: linux bash

我正在寻找一个执行以下操作的linux bash脚本:它以一个文件夹作为输入,并输出出现在该文件夹中的所有扩展名。

例如     脚本的输入:包含3个mp3文件和2个png的文件夹的路径。     脚本输出:“ mp3,png”

2 个答案:

答案 0 :(得分:1)

通过以下方式查找当前目录中的所有扩展名:

find . -maxdepth 1 -type f|perl -ne 'print $1 if m/\.([^.\/]+)$/'|sort -u|xargs|sed 's/ /, /g'

输出

  

jpg,日志,mp3,mp4,png,我们,网络,webp

答案 1 :(得分:-1)

应该完成任务:

cat le
#!/bin/bash
ls $1|sed -nr 's/.*(\..*)$/\1/;s/\.//p'

并运行它:

~/tmp5$ ./le .
csv
txt

简要说明: ls $ 1#对传入的名称执行ls sed,默认情况下不打印任何内容(使用-n),然后删除最后一个.之前一行的所有内容,然后删除句点并打印必须的行。