例如:查找搜索txt文件的命令
find . -iname "*.txt"
我想在find
中创建.bash_profile
命令的别名,以便在获取.bash_profile
时我应该能够传递任何参数来查找命令来搜索文件类型:
find txt find pdf find doc
我尝试使用以下语法将find命令覆盖为:
find ./ -iname "$1"
其中$ 1可以是任何参数文件类型。
答案 0 :(得分:1)
为什么不写一个bash脚本?
#!/bin/sh
for var in "$@"; do
find . -iname "*.$var"
done
您可以将其存储在文件中,使其可执行(chmod +x find-by-type
),然后将其复制到PATH变量中的目录。执行就像调用一样简单:
[user@localhost ~]$ find-by-type pdf txt doc
答案 1 :(得分:1)
在您的主目录中打开您的.bashrc
文件(通常隐藏按 Ctrl + H 查看)并附加此行。
alias finder="find . -type f -regex "
注意我使用-regex
来帮助您匹配文件扩展名模式。
然后在shell中执行:
source .bashrc
然后,使用您的文件名/扩展名调用名为finder
的别名。
例如:
finder '*\(txt\|py\|pdf\|lst\)'
答案 2 :(得分:0)
感谢您的建议。我尝试过在.bash_profile
中编写函数:
findFile(){
find $1 -iname "*.$2"
}
来源.bash_profile
export -f findFile
findFile ~/Desktop txt