shell 命令列直譯器

2021-08-31 11:53:16 字數 1169 閱讀 9738

shell----命令列直譯器:dash  bash(軟體,是shell的一種)

root 超級使用者,不受限制

linux是乙個多工,多使用者作業系統。

linux許可權管理:linux對每乙個檔案都進行許可權管理

1.檔案許可權管理:

u 檔案的許可權是針對使用者的許可權,使用者分了三類

g 檔案所有者:這個檔案屬於誰

o 檔案所屬者:這個檔案屬於哪個使用者組(組內成員的許可權)

其他使用者:出來上邊兩類使用者之外的使用者

2.使用者應該對檔案具備的許可權也分三類:

r 可讀許可權:使用者是否可以讀取這個內容

w 可寫許可權:使用者是否可以修改這個檔案

x 可執行許可權:使用者是否可以執行這個檔案

所有者      所屬組      其他使用者

rwx         rwx         rwx

檔案:           目錄:

r:可讀           可瀏覽

w: 可寫           建立/刪除

x: 可執行        可進入

rwxrwxrwx

111111111改為8進製:777

umask: 檢視/設定檔案的建立許可權掩碼

777-002-111(可執行)664

755  111 101 101 & (111 101 101掩碼取反)000 010 010

標準的檔案建立時拿給定的許可權與乙個取反的掩碼,得到最終實際的許可權

給定許可權 & (~umask)

我們在sell中建立檔案的時候,給定的許可權是666,而shell的掩碼是002,因此得到的檔案許可權是664  666 & (~002)

chmod:修改檔案許可權

給指定的使用者新增/刪除指定許可權:

u/g/o/a + /-r/w/x

chmod + x file(所有許可權)

以八進位制數字來修改許可權:

chmod 777 file

chown:修改檔案所有者

chgrp:修改檔案所屬組

沾滯位:沾滯位這個許可權僅僅針對目錄,對於設定了沾滯位的目錄,使用者能夠建立檔案,不能刪除檔案按。chomd +t 使用者名稱

>>追加   >清空

| 管道符  連線兩個命令,將前面命令的輸出結果交給後邊命令進行處理。

ls -l | grep bit

簡單shell命令列直譯器 (二)

cp 舊檔名 新檔名 在當前目錄中拷貝 cp 檔名 路徑 將當前目錄中的檔案拷貝到指定的資料夾,檔名可改可不改 cp 絕對路徑 檔名 路徑 絕對路徑 cp i 舊檔名 新檔名 若同名確認提示 cp r 目錄 新目錄 把乙個目錄拷貝到指定路徑 bogon desktop nn cp r test he...

關於命令列直譯器shell的管道的理解

管道 是一種基本的ipc機制 interprocess communication 程序間通訊,參照 作用於有血緣關係的程序之間,完成資料傳遞。而呼叫pipe系統函式可以建立乙個管道,有如下特質 1.本質是乙個偽檔案 使用了核心緩衝區 2.由兩個檔案描述符引用,乙個表示讀端,乙個表示寫端。3.規定資...

適用stm32的命令列直譯器shell

使用這個庫的基本功能只需要把 shell.c shell.h ustdio.c ustdio.h 和 kernel.h 這幾個檔案包含進檔案工程裡面即可。系統的使用可以大致分為以下幾個步驟 0.初始化硬體部分。1.編寫硬體對應的void puts char buf uint16 t len 傳送函式...