linux shell install 命令簡介

2021-10-01 11:12:03 字數 2500 閱讀 9932

用法:install [選項]... [-t] 原始檔 目標檔案

或:install [選項]... 原始檔... 目錄

或:install [選項]... -t 目錄 原始檔...

或:install [選項]... -d 目錄...

此install 將檔案(通常僅是編譯後的檔案)複製到您所選擇的目的位置。

在前三種形式中,將原始檔複製到目標檔案或將多個原始檔複製到乙個已存在的目錄

中同時設定其所有權和許可權模式。在第四種形式中,建立給出目標目錄中的所有元件。

長選項必須使用的引數對於短選項時也是必需使用的。

--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 選項或是******_backup_suffix

環境變數指定。版本控制的方式可通過--backup 選項或version_control 環境

變數來選擇。以下是可用的變數值:

none, off       不進行備份(即使使用了--backup 選項)

numbered, t     備份檔案加上數字進行排序

existing, nil   若有數字的備份檔案已經存在則使用數字,否則使用普通方式備份

******, 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 在做拷貝的同時,設定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

sort,uniq,wc,history命令簡介

sort 排序資料 n 按照數值的大小進行排序 r 逆序排序 t 字段分隔符 k 以哪個欄位為關鍵字 u 相同的行只顯示一次 f 忽略大小寫 uniq 檢查檔案中重複出現的行 c 重複出現的行的次數 d 只顯示重複出現的行 wc 文字統計的命令 l 顯示文字的行數 w 顯示文字的單詞數 c 顯示文字...

linux中head命令簡析

linux中head命令簡析 head命令是用來檢視具體檔案的前面幾行的內容,具體格式如下 head head 20 install.log 通過上面命令你可以檢視install.log這個檔案前面20行的內容 www.2cto.com tail 20 install.log 你還可以使用 tail...

mysql基本命令 最簡

啟動mysql服務 1.開啟資料庫 mysql uroot p 會車加密碼 mac下 mysql uroot 2.檢視資料庫 show databases 3.進入資料庫 use 4.表的定義 建立表 create table 刪除表 drop table 更改表 alter table 欄位的更改...