linux下的install命令

  • Post author:
  • Post category:linux



介绍:

install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。install命令和cp命令类似,都可以将文件/目录拷贝到指定的地点。但是,install允许你控制目标文件的属性。install通常用于程序的makefile,使用它来将程序拷贝到目标(安装)目录。


语法:

install [OPTION]… [-T] SOURCE DEST

install [OPTION]… SOURCE… DIRECTORY

install [OPTION]… -t DIRECTORY SOURCE…

install [OPTION]… -d DIRECTORY…

#如果给两个文件名,复制第一个文件到第二个

#如果给出了-t选项,或者如果最后一个文件是目录,并且没有给出-T选项,那么“install”将使用SOURCE的名称将每个SOURCE文件复制到指定的目录

#如果给出了-d选项,install会以755的权限创建每个目录,而不管-m选项指定的权限或者当前的umask,注意:目录Setuid和Setgid ::,用于如何继承父目录的set-user-ID和set-group-ID位

#在前两种格式中,会将<来源>复制到<目的地>或将多个<来源>文件复制到已存在的<目录>,同时设定权限模式及所有者/所属组。

#在第三种格式中,会创建所有指定的目录及它们的主目录。

#长选项必须用的参数,在使用短选项时也是必须的


选项:

–backup[=CONTROL]: 为每个已存在 的目的地文件进行备份

-b: 类似–backup,但不接受任何参数

-c: 此选项不作处理,man文档里写的是ignored

-D, –compare:比较每对源文件和目标文件,如果目的地具有相同的内容和任何指定的所有者,组,权限以及可能的SELinux上下文,那么不要修改目的地

-d, –directory: 所有参数都作为目录处理,而且会创建指定目录的所有主目录

-D: 创建<目的地>前的所有主目录,然后将<来源>复制至<目的地>;在第一种格式中有用

-g, –group=组: 自行设定所属组,而不是进程目前的所属组

-m, –mode=模式: 自行设定权限模式,(像chmod),而不是rwxr-xr-x

-o, –owner: 自行设定权限所有者(只适用于超级用户)

-p, –preserve-timestamp: 以<来源>文件的访问/修改时间作为相应的目的地文件的时间属性

-s, –strip: 用strip命令删除symbol table,只适用于第一及第二种格式

-S, –suffix=后缀: 自定指定备份文件的后缀

-v, –verbose: 处理每个文件/目录时印出名称

-Z CONTEXT, –context=CONTEXT: 设置要用于任何创建的文件和目录的默认SELinux安全上下文。 如果SELinux被禁用,则打印警告并忽略该选项

–help:显示此帮助信息并离开

–version: 显示版本信息并离开


实例:

install -d [option] DIRECTORY [DIRECTORY…]

支持多个,类似

mkdir -p

,支持递归。例如:

install -d /a/b/c e/f

结果和

mkdir -p a/b/c e/f

一样

install [option] SOURCE DEST

复制SOURCE文件(测试不能是目录)到DEST(文件):

install a/e c #结果类似:cp a/e c #注意c必须是文件

-D选项:

install -D x a/b/c #类似于mkdir -p a/b && cp x /a/b/c

复制多个SOURCE文件到目的目录

install a/* d #其中d是目录



版权声明:本文为chenghuikai原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。