linux install命令文件夹,详解Linux系统中的install命令的用法

用法: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下面

[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

更新文件时间戳

install 命令好强大啊。

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Linux 卸载通过 make install 安装到系统文件夹的程序,可以使用 make uninstall 命令。需要注意的是,这需要在安装时使用相同的配置选项才能正常工作。如果不能使用 make uninstall,可以手动删除程序安装的文件。 ### 回答2: 在Linux系统,如果你使用了`make install`命令将程序安装到系统文件夹,你可以通过以下步骤卸载这些程序: 1. 打开终端。 2. 使用`cd`命令切换到你安装程序的目录。该目录通常是你运行`make install`命令时所指定的目录,默认情况下是`/usr/local`。 3. 运行`make uninstall`命令。如果该命令可用,它将卸载程序并删除相关文件。但并非所有程序都提供这个卸载选项,所以你可能需要继续执行下面的步骤。 4. 如果没有`make uninstall`命令,可以通过查看`Makefile`文件来确定程序的安装位置和文件列表。使用文本编辑器打开`Makefile`文件。 5. 在`Makefile`文件,查找并记录下安装的文件列表。这些文件通常包括二进制文件、库文件、配置文件以及其他相关文件。 6. 运行`rm`命令删除这些文件。例如,如果安装的二进制文件位于`/usr/local/bin`目录下,你可以运行`sudo rm /usr/local/bin/程序名称`删除它。 7. 继续删除其他安装的文件,确保不遗漏。 8. 如果你之前使用了`make install`的`--prefix`选项指定了其他目录,也要在该目录下重复上述步骤,删除对应的文件。 9. 删除可能存在的相关配置文件。这些配置文件通常位于`/etc`目录下。你可以使用`sudo rm /etc/程序名称`命令来删除它们。 10. 最后,在终端运行`sudo updatedb`命令以更新系统文件搜索索引。 通过以上步骤,你可以将通过`make install`安装到系统文件夹的程序完全卸载。请注意,操作系统本身的文件不可删除,只能删除自行安装的程序文件。 ### 回答3: 在Linux,卸载已经通过"make install"命令安装到系统文件夹的程序可以按照以下步骤进行: 1. 打开终端或命令行界面。 2. 使用"cd"命令进入已安装程序所在的目录。通常情况下,"make install"会将程序安装到默认目录,即/usr/local目录下。所以可以使用如下命令进入该目录: `cd /usr/local` 3. 查找已安装的程序。如果安装程序的时候没有指定安装目录,则可能需要通过"find"命令来查找具体的安装路径。例如,查找名称为"program"的程序可以使用如下命令: `find . -name program` 4. 找到要卸载的程序后,使用"rm"命令将其从系统删除。例如,要删除名为"program"的程序可以使用如下命令: `rm -rf ./program` 这里的"-rf"选项用于递归删除程序及其子目录和文件,并且不再显示提示框。 5. 在完成上述步骤后,已经成功卸载了通过"make install"安装到系统文件夹的程序。 请注意,在卸载程序时需小心操作,确保卸载的是正确的程序,并且备份重要的数据以防止误删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值