如何编译linux系统的bz软件包?对此一窍不通?是不是把特定的文件装入制定的文件夹

如何编译linux系统的bz软件包?对此一窍不通?是不是把特定的文件装入制定的文件夹,第1张

.bz是一种压缩格式,不能被编译。如果你希望编译.bz中的源文件,用tar -jxvf [your_file].tar.bz解压这个压缩包,再用make命令编译(需要makefile文件)如果你希望制作一个.bz格式的压缩包,用tar -jcvf [your_archive_name].tar.bz [file1] [file2] ...

一般linux可执行的命令在环境变量PATH的值的目录

可以在这些目录下寻找以bz开头的命令

方法是使用grep配合正则表达式来完成

下面是一个例子

#!/bin/bash 

for i in $(echo $PATH | sed 's/:/ /g')

do

    for n in $(ls $i)

    do

        echo $n | grep -oP '^bz.*'

    done

done

exit 0

该代码就是遍历PATH环境变量里的每一个目录中的所有命令

然后通过grep的配合正则表达式找出以bz开头的文件

当然一般情况下这些目录下的文件是可执行的程序

但也有可能会出现非可执行的程序

这种就不能算作是命令了

这样就需要在进行匹配之前判断文件是否为可执行程序

一个简单的方法可以使用file命令来完成

if file $n > /dev/null

then

    echo $n | grep -oP '^bz.*'

fi

除了以上方法

像是bash或者zsh等都有tab自动补全的功能

可以在终端上输入bz然后通过按tab进行补全会列出所有以bz开头的命令

对于那些不在PATH环境变量里的目录

需要手动指定目录的集合

所以要确定系统中有多少以bz开头的命令首先要明确自己的目标

是那些只在PATH环境变量目录里的命令还是包括其它目录甚至是整个/分区里所有的目录

然后再根据具体情况进行查找


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7104464.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存