<acronym id='pnjo4'><em id='pnjo4'></em><td id='pnjo4'><div id='pnjo4'></div></td></acronym><address id='pnjo4'><big id='pnjo4'><big id='pnjo4'></big><legend id='pnjo4'></legend></big></address>
    1. <ins id='pnjo4'></ins>
    2. <tr id='pnjo4'><strong id='pnjo4'></strong><small id='pnjo4'></small><button id='pnjo4'></button><li id='pnjo4'><noscript id='pnjo4'><big id='pnjo4'></big><dt id='pnjo4'></dt></noscript></li></tr><ol id='pnjo4'><table id='pnjo4'><blockquote id='pnjo4'><tbody id='pnjo4'></tbody></blockquote></table></ol><u id='pnjo4'></u><kbd id='pnjo4'><kbd id='pnjo4'></kbd></kbd>
    3. <dl id='pnjo4'></dl>

        <code id='pnjo4'><strong id='pnjo4'></strong></code>
        <span id='pnjo4'></span>
          <i id='pnjo4'></i>
          <fieldset id='pnjo4'></fieldset>

            <i id='pnjo4'><div id='pnjo4'><ins id='pnjo4'></ins></div></i>

            详解Linux系统中的install命令的用法

            • 时间:
            • 浏览:10
            • 来源:124软件资讯网

                用法:install [选项]... [-T] 源文件 目的文件

                或:install [选项]... 源文件... 目录

                或:install [选项]... -t 目录 源文件...

                或:install [选项]... -d 目录...

                此install 将文件(通常仅是编译后的文件)复制到您所选择的目的位置  。

                若是您希望在GNU/Linux 操作系统上下载并安装一个即时可用的软件包  ,

                您应当使用诸如yum(1) 和apt-get(1) 的软件保证理器 。

                在前三种形式中  ,将源文件复制到目的文件或将多个源文件复制到一个已存在的目录

                中同时设置其所有权和权限模式  。在第四种形式中 ,建立给出目的目录中的所有组件 。

                长选项必须使用的参数对于短选项时也是必须使用的 。

                --backup[=CONTROL] 为每个已存在的文件建立备份

                -b 类似--backup 但不接受参数

                -c (忽略)

                -C, --compare 比力每组源文件和目的文件  ,在一些情形下不修改目的文件

                -d, --directory 将所有参数视为目录名称;为指定的目录建立所有组件

                -D 建立目的目录的所有须要的父目录 ,然后将源文件复制至该目录

                -g, --group=组 自行设置所属组  ,而不是历程现在的所属组

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

                -o, --owner=所有者 自行设置所有者(只适用于超级用户)

                -p, --preserve-timestamps 修改源文件的会见/修改时间以与目的文件保持一致

                -s, --strip 拆解符号表

                --strip-program=法式 指定拆解二进制文件的法式

                -S, --suffix=后缀 笼罩常用备份文件后缀

                -t, --target-directory=目录 将源文件所有参数复制到指定目录

                -T, --no-target-directory 将目的文件视为通俗文件

                -v, --verbose 建立目录时显示其名称

                --preserve-context 保持SELinux 的宁静情况

                -Z, --context=CONTEXT 设置文件和目录的SELinux 宁静情况

                --help 显示此资助信息并退出

                --version 显示版本信息并退出

                备份文件的后缀为"~"  ,除非以--suffix 选项或是SIMPLE_BACKUP_SUFFIX

                情况变量指定  。版本控制的方式可通过--backup 选项或VERSION_CONTROL 情况

                变量来选择 。以下是可用的变量值:

                none, off 不举行备份(纵然使用了--backup 选项)

                numbered, t 备份文件加上数字举行排序

                existing, nil 若有数字的备份文件已经存在则使用数字  ,否则使用通俗方式备份

                simple, never 永远使用通俗方式备份

                例:

                代码如下:

                [root@linux ~]# install test.php ar_test #将test.php拷贝到ar_test下面

              < p>[root@linux ~]# install -d hao #建立目录

                [root@linux ~]# install -t hao utf8 test.php #将utf8 test.php cp到hao目录下面

                linux中install下令和cp下令的区别

                基本上 ,在Makefile里会用到install ,其他地方会用cp下令 。

                它们完成同样的使命——拷贝文件  ,它们之间的区别主要如下:

                1、最主要的一点  ,若是目的文件存在  ,cp会先清空文件后往里写入新文件  ,而install则会先删除掉原先的文件然后写入新文件  。这是由于往正在 使用的文件中写入内容可能会导致一些问题 ,好比说写入正在执行的文件可能会失败  ,好比说往已经在连续写入的文件句柄中写入新文件会发生错误的文件  。而使用 install先删除后写入(会天生新的文件句柄)的方式去安装就能制止这些问题了;

                2、install下令会适当地处置惩罚文件权限的问题 。好比说  ,install -c会把目的文件的权限设置为rwxr-xr-x;

                3、install下令可以打印出更多更合适的debug信息 ,还会自动处置惩罚SElinux上下文的问题  。

                代码如下:

                install - copy files and set attributes

                install 在做拷贝的同时  ,设置attributes.

                因此Makefile 中只管使用install 下令  。

                例如

                代码如下:

                @install -d /usr/bin -p -D -m 0755 targets /usr/bin

                相当于

                代码如下:

                @mkdir -p /usr/bin targets /usr/bin 755 /usr/bin/targets /usr/bin/tagets

              < p>

                更新文件时间戳

                install 下令好强盛啊  。

                另外@前缀的意思是不在控制台输出效果  。