一. linux java
1.Linux發行版linux
<1> 常見的發行版本以下:shell
Ubuntuwindows
Redhat安全
Fedora服務器
openSUSEless
Linux Mint編輯器
Debianoop
Manjaro學習
Mageia
CentOS
Arch
2.Linux和Windows區別
比較 |
Windows |
Linux |
費用 |
收費且很貴 |
Linux免費或少量費用 |
軟件與支持 |
數量和質量的優點,不過大部分爲收費軟件;由微軟官方提供支持和服務 |
開源自由軟件,用戶能夠修改定製和再發布,因爲基本免費沒有資金支持,部分軟件質量和體驗欠缺;有全球全部的Linux開發者和自由軟件社區提供支持 |
安全性 |
三天兩頭打補丁安裝系統安全性更新,仍是會中病毒木馬 |
要說Linux沒有安全問題,那固然是不可能的,這一點仁者見仁智者見智,相對來講確定比Windows平臺更加安全 |
使用習慣 |
普通用戶基本都是純圖形界面下操做使用,依靠鼠標和鍵盤完成一切操做,用戶上手容易入門簡單; |
兼具圖形界面操做和徹底的命令行操做,能夠用鍵盤完成一切操做,新手入門較困難,須要一些學習和指導,一旦熟練之後效率極高 |
可定製型 |
封閉的,系統的可定製性不好 |
開源,可定製性很強 |
應用場景 |
桌面操做系統主要使用Windows |
支撐百度、谷歌、淘寶等應用軟件和服務,是後臺成千上萬的Linux服務器主機,世界上大部分軟件和服務都運行Linux上的 |
l 桌面操做系統
Windows 系列: 用戶羣體大
macOS: 適合於開發人員
Linux: 應用軟件少
服務器操做系統
Linux: 1、安全、穩定、免費 2、佔有率高
Windows Server: 1、付費 2、佔有率低
4.Linux文件
Linux系統中一切皆文件。
5.Linux目錄結構簡介
目錄結構 |
說明 |
/bin |
是Binary的縮寫,這個目錄存放着最常用的命令 |
/sbin |
s就是Super User的意思,這裏存放的系統管理員使用的系統管理程序 |
/home |
存放普通用戶的主目錄,在Linux中每一個用戶都有本身的一個目錄,通常該目錄是以用戶的帳戶命名 |
/root |
該目錄爲系統管理員,也稱做超級權限者的用戶主目錄 |
/lib |
系統開機所須要最基本的動態鏈接共享庫,其做用相似於Windows裏面的DLL文件。幾乎全部的應用程序都須要用到這些共享庫 |
/etc |
全部的系統管理所須要的配置文件和子目錄 |
/usr |
這是一個很是重要的目錄,用戶的不少應用程序和文件都放在這個目錄下,相似於Windows下的program files目錄 |
/boot |
這裏存放的是啓動Linux時使用的一些核心文件,包括一些鏈接文件以及鏡像文件,本身的安裝別放這裏 |
/proc |
這個目錄是一個虛擬目錄,它是系統內存的映射,咱們能夠經過直接訪問這個目錄來獲取系統信息 |
/srv |
Servic的縮寫,該目錄存放一些服務啓動以後須要提取的數據 |
/sys |
這是Linux2.6內核的一個很大的變化。該目錄下安裝了2.6內核中新出現的一個文件系統sysfs |
/tmp |
這個目錄是用來存放一些臨時文件的 |
/dev |
相似於Windows的設備管理器,把全部的硬件用文件的形式存儲 |
/media |
Linux系統會自動識別一些設備,例如U盤、光驅等等,當識別後,Linux會把識別的設備掛載到這個目錄下面 |
/mnt |
系統提供該目錄是爲了讓用戶臨時掛載別的文件系統,咱們能夠將外部存儲掛載在/mnt/上,而後進入該目錄就能夠查看裏的內容了 |
/opt |
這是給主機額外安裝軟件所擺放的目錄。好比你安裝一個MySQL數據則就能夠放到這個目錄下。默認是空的。 |
/var |
這個目錄中存放着在不斷擴充着的東西,咱們習慣將那些常常被修改的目錄放在這個目錄下。包括日誌文件 |
/selinux |
Selinux是一種安全自系統,它能控制程序只訪問特定文件 |
/lost+found |
這個目錄通常狀況下空的,當系統非法關機後,這裏就存放了一些文件 |
6.VI/VIM編輯器
<1>通常模式
語法 |
功能描述 |
yy |
複製光標當前一行 |
y數字y |
複製一段(從第幾行到第幾行) |
p |
箭頭移動到目的行粘貼 |
u |
撤銷上一步 |
dd |
刪除光標當前行 |
d數字d |
刪除光標(含)後多少行 |
x |
刪除一個字母,至關於del,向後刪 |
X |
刪除一個字母,至關於Backspace,向前刪 |
yw |
複製一個詞 |
dw |
刪除一個詞 |
shift+^ |
移動到行頭 |
shift+$ |
移動到行尾 |
gg或者1+G |
移動到頁頭 |
G |
移動到頁尾 |
數字+G(先輸入數字,在按G) |
移動到目標行 |
<2>編輯模式
按鍵 |
功能 |
i |
當前光標前 |
a |
當前光標後 |
o |
當前光標行的下一行 |
I |
光標所在行最前 |
A |
光標所在行最後 |
O |
當前光標行的上一行 |
<2.1>退出編輯模式
按『Esc』鍵
<3>指令模式
<3.1>基本語法
命令 |
功能 |
:w |
保存 |
:q |
退出 |
:! |
強制執行 |
/ 要查找的詞 |
n 查找下一個,N 往上查找 |
? 要查找的詞 |
n是查找上一個,N是往下查找 |
:set nu |
顯示行號 |
:set nonu |
關閉行號 |
ZZ(shift+zz) |
沒有修改文件直接退出,若是修改了文件保存後退出 |
7.關閉防火牆
<1>service 後臺服務管理
<1.1>基本語法
service 服務名 start (功能描述:開啓服務)
service 服務名 stop (功能描述:關閉服務)
service 服務名 restart (功能描述:從新啓動服務)
service 服務名 status (功能描述:查看服務狀態)
<2>chkconfig設置後臺服務的自啓配置
<2.1>基本語法
chkconfig (功能描述:查看全部服務器自啓配置)
chkconfig 服務名 off (功能描述:關掉指定服務的自動啓動)
chkconfig 服務名 on (功能描述:開啓指定服務的自動啓動)
chkconfig 服務名 --list (功能描述:查看服務開機啓動狀態)
<3>關閉防火牆
<3.1>臨時關閉防火牆
<3.1.1>查看防火牆狀態
[root@hadoop100桌面]# service iptables status
<3.1.2>臨時關閉防火牆
[root@hadoop100桌面]# service iptables stop
<3.2>開機啓動時關閉防火牆
<3.2.1>查看防火牆開機啓動狀態
[root@hadoop100桌面]#chkconfig iptables --list
<3.2.2>設置開機時關閉防火牆
[root@hadoop100桌面]#chkconfig iptables off
二.XSHELL
1.經常使用基本命令
<1.1>man 得到幫助信息
<1,1,1>. 基本語法
man [命令或配置文件] (功能描述:得到幫助信息)
<1.1.2>.顯示說明
信息 |
功能 |
NAME |
命令的名稱和單行描述 |
SYNOPSIS |
怎樣使用命令 |
DESCRIPTION |
命令功能的深刻討論 |
EXAMPLES |
怎樣使用命令的例子 |
SEE ALSO |
相關主題(一般是手冊頁) |
<1.1.3>案例實操
(1)查看ls命令的幫助信息
[root@hadoop101 ~]# man ls
2. help 得到shell內置命令的幫助信息
<2.1>.基本語法
help 命令 (功能描述:得到shell內置命令的幫助信息)
<2.2>.案例實操
(1)查看cd命令的幫助信息
[root@hadoop101 ~]# help cd
3.經常使用快捷鍵
經常使用快捷鍵 |
功能 |
ctrl + c |
中止進程 |
ctrl+l |
清屏;完全清屏是:reset |
ctrl + q |
退出 |
善於用tab鍵 |
提示(更重要的是能夠防止敲錯) |
上下鍵 |
查找執行過的命令 |
ctrl +alt |
linux和Windows之間切換 |
pwd:print working directory 打印工做目錄
1.基本語法
pwd (功能描述:顯示當前工做目錄的絕對路徑)
2.案例實操
(1)顯示當前工做目錄的絕對路徑
[root@hadoop101 ~]# pwd
/root
ls:list 列出目錄內容
1.基本語法
ls [選項] [目錄或是文件]
2.選項說明
選項 |
功能 |
-a |
所有的文件,連同隱藏檔( 開頭爲 . 的文件) 一塊兒列出來(經常使用) |
-l |
長數據串列出,包含文件的屬性與權限等等數據;(經常使用) |
cd:Change Directory切換路徑
1.基本語法
cd [參數]
2.參數說明
參數 |
功能 |
cd 絕對路徑 |
切換路徑 |
cd相對路徑 |
切換路徑 |
cd ~或者cd |
回到本身的家目錄 |
cd - |
回到上一次所在目錄 |
cd .. |
回到當前目錄的上一級目錄 |
cd -P |
跳轉到實際物理路徑,而非快捷方式路徑 |
3.案例實操
(1)使用絕對路徑切換到root目錄
[root@hadoop101 ~]# cd /root/
(2)使用相對路徑切換到「公共的」目錄
[root@hadoop101 ~]# cd 公共的/
(3)表示回到本身的家目錄,亦便是 /root 這個目錄
[root@hadoop101 公共的]# cd ~
(4)cd- 回到上一次所在目錄
[root@hadoop101 ~]# cd -
(5)表示回到當前目錄的上一級目錄,亦便是 「/root/公共的」的上一級目錄的意思;
[root@hadoop101 公共的]# cd ..
mkdir:Make directory 創建目錄
1.基本語法
mkdir [選項] 要建立的目錄
2.選項說明
表1-10 選項說明
選項 |
功能 |
-p |
建立多層目錄 |
3.案例實操
(1)建立一個目錄
[root@hadoop101 ~]# mkdir xiyou
[root@hadoop101 ~]# mkdir xiyou/mingjie
(2)建立一個多級目錄
[root@hadoop101 ~]# mkdir -p xiyou/dssz/meihouwang
rmdir:Remove directory 移動目錄
1.基本語法:
rmdir 要刪除的空目錄
2.案例實操
(1)刪除一個空的文件夾
[root@hadoop101 ~]# rmdir xiyou/dssz/meihouwang
1.基本語法
touch 文件名稱
2.案例實操
[root@hadoop101 ~]# touch xiyou/dssz/sunwukong.txt
1.基本語法
cp [選項] source dest (功能描述:複製source文件到dest)
2.選項說明
選項 |
功能 |
-r |
遞歸複製整個文件夾 |
3.參數說明
參數 |
功能 |
source |
源文件 |
dest |
目標文件 |
4.案例實操
(1)複製文件
[root@hadoop101 ~]# cp xiyou/dssz/suwukong.txt xiyou/mingjie/
(2)遞歸複製整個文件夾
[root@hadoop101 ~]# cp -r xiyou/dssz/ ./
1.基本語法
rm [選項] deleteFile (功能描述:遞歸刪除目錄中全部內容)
2.選項說明
表1-13 選項說明
選項 |
功能 |
-r |
遞歸刪除目錄中全部內容 |
-f |
強制執行刪除操做,而不提示用於進行確認。 |
-v |
顯示指令的詳細執行過程 |
3. 案例實操
(1)刪除目錄中的內容
[root@hadoop101 ~]# rm xiyou/mingjie/sunwukong.txt
(2)遞歸刪除目錄中全部內容
[root@hadoop101 ~]# rm -rf dssz/
1.基本語法
(1)mv oldNameFile newNameFile (功能描述:重命名)
(2)mv /temp/movefile /targetFolder (功能描述:移動文件)
2.案例實操
(1)重命名
[root@hadoop101 ~]# mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt
(2)移動文件
[root@hadoop101 ~]# mv xiyou/dssz/houge.txt ./
查看文件內容,從第一行開始顯示。
1.基本語法
cat [選項] 要查看的文件
2.選項說明
選項 |
功能描述 |
-n |
顯示全部行的行號,包括空行。 |
3.經驗技巧
通常查看比較小的文件,一屏幕能顯示全的。
4.案例實操
(1)查看文件內容並顯示行號
[jinghang@hadoop101 ~]$ cat -n houge.tx
more指令是一個基於VI編輯器的文本過濾器,它以全屏幕的方式按頁顯示文本文件的內容。more指令中內置了若干快捷鍵,詳見操做說明。
1.基本語法
more 要查看的文件
2.操做說明
操做 |
功能說明 |
空白鍵 (space) |
表明向下翻一頁; |
Enter |
表明向下翻『一行』; |
q |
表明馬上離開 more ,再也不顯示該文件內容。 |
Ctrl+F |
向下滾動一屏 |
Ctrl+B |
返回上一屏 |
= |
輸出當前行的行號 |
:f |
輸出文件名和當前行的行號 |
3.案例實操
(1)採用more查看文件
[root@hadoop101 ~]# more smartd.conf
less指令用來分屏查看文件內容,它的功能與more指令相似,可是比more指令更增強大,支持各類顯示終端。less指令在顯示文件內容時,並非一次將整個文件加載以後才顯示,而是根據顯示須要加載內容,對於顯示大型文件具備較高的效率。
1.基本語法
less 要查看的文件
2.操做說明
操做 |
功能說明 |
空白鍵 |
向下翻動一頁; |
[pagedown] |
向下翻動一頁 |
[pageup] |
向上翻動一頁; |
/字串 |
向下搜尋『字串』的功能;n:向下查找;N:向上查找; |
?字串 |
向上搜尋『字串』的功能;n:向上查找;N:向下查找; |
q |
離開 less 這個程序; |
4.案例實操
(1)採用less查看文件
[root@hadoop101 ~]# less smartd.conf
echo輸出內容到控制檯
echo [選項] [輸出內容]
選項:
-e: 支持反斜線控制的字符轉換
控制字符 |
做用 |
\\ |
輸出\自己 |
\n |
換行符 |
\t |
製表符,也就是Tab鍵 |
[jinghang@hadoop101 ~]$ echo "hello\tworld"
hello\tworld
[jinghang@hadoop101 ~]$ echo -e "hello\tworld"
hello world
head用於顯示文件的開頭部份內容,默認狀況下head指令顯示文件的前10行內容。
head 文件 (功能描述:查看文件頭10行內容)
head -n 5 文件 (功能描述:查看文件頭5行內容,5能夠是任意行數)
2.選項說明
選項 |
功能 |
-n <行數> |
指定顯示頭部內容的行數 |
3.案例實操
(1)查看文件的頭2行
[root@hadoop101 ~]# head -n 2 smartd.conf
tail用於輸出文件中尾部的內容,默認狀況下tail指令顯示文件的後10行內容。
1. 基本語法
(1)tail 文件 (功能描述:查看文件後10行內容)
(2)tail -n 5 文件 (功能描述:查看文件後5行內容,5能夠是任意行數)
(3)tail -f 文件 (功能描述:實時追蹤該文檔的全部更新)
2. 選項說明
選項 |
功能 |
-n<行數> |
輸出文件尾部n行內容 |
-f |
顯示文件最新追加的內容,監視文件變化 |
3.案例實操
(1)查看文件頭1行內容
[root@hadoop101 ~]# tail -n 1 smartd.conf
(2)實時追蹤該檔的全部更新
[root@hadoop101 ~]# tail -f houge.txt
1.基本語法
(1)ll >文件 (功能描述:列表的內容寫入文件a.txt中(覆蓋寫))
(2)ll >>文件 (功能描述:列表的內容追加到文件aa.txt的末尾)
(3)cat 文件1 > 文件2 (功能描述:將文件1的內容覆蓋到文件2)
(4)echo 「內容」 >> 文件
2.案例實操
(1)將ls查看信息寫入到文件中
[root@hadoop101 ~]# ls -l>houge.txt
(2)將ls查看信息追加到文件中
[root@hadoop101 ~]# ls -l>>houge.txt
(3)採用echo將hello單詞追加到文件中
[root@hadoop101 ~]# echo hello>>houge.txt
軟連接也成爲符號連接,相似於windows裏的快捷方式,有本身的數據塊,主要存放了連接其餘文件的路徑。
1.基本語法
ln -s [原文件或目錄] [軟連接名] (功能描述:給原文件建立一個軟連接)
2.經驗技巧
刪除軟連接: rm -rf 軟連接名,而不是rm -rf 軟連接名/
查詢:經過ll就能夠查看,列表屬性第1位是l,尾部會有位置指向。
3.案例實操
(1)建立軟鏈接
[root@hadoop101 ~]# mv houge.txt xiyou/dssz/
[root@hadoop101 ~]# ln -s xiyou/dssz/houge.txt ./houzi
[root@hadoop101 ~]# ll
lrwxrwxrwx. 1 root root 20 6月 17 12:56 houzi -> xiyou/dssz/houge.txt
(2)刪除軟鏈接
[root@hadoop101 ~]# rm -rf houzi
(3)進入軟鏈接實際物理路徑
[root@hadoop101 ~]# ln -s xiyou/dssz/ ./dssz
[root@hadoop101 ~]# cd -P dssz/
1.基本語法
history (功能描述:查看已經執行過歷史命令)
2.案例實操
(1)查看已經執行過的歷史命令
[root@hadoop101 test1]# history
1.基本語法
date [OPTION]... [+FORMAT]
2.選項說明
表1-20
選項 |
功能 |
-d<時間字符串> |
顯示指定的「時間字符串」表示的時間,而非當前時間 |
-s<日期時間> |
設置系統日期時間 |
3.參數說明
表1-21
參數 |
功能 |
<+日期時間格式> |
指定顯示時使用的日期時間格式 |
1.基本語法
(1)date (功能描述:顯示當前時間)
(2)date +%Y (功能描述:顯示當前年份)
(3)date +%m (功能描述:顯示當前月份)
(4)date +%d (功能描述:顯示當前是哪一天)
(5)date "+%Y-%m-%d %H:%M:%S" (功能描述:顯示年月日時分秒)
2.案例實操
(1)顯示當前時間信息
[root@hadoop101 ~]# date
2017年 06月 19日 星期一 20:53:30 CST
(2)顯示當前時間年月日
[root@hadoop101 ~]# date +%Y%m%d
20170619
(3)顯示當前時間年月日時分秒
[root@hadoop101 ~]# date "+%Y-%m-%d %H:%M:%S"
2017-06-19 20:54:58
1.基本語法
(1)date -d '1 days ago' (功能描述:顯示前一天時間)
(2)date -d '-1 days ago' (功能描述:顯示明天時間)
2.案例實操
(1)顯示前一天
[root@hadoop101 ~]# date -d '1 days ago'
2017年 06月 18日 星期日 21:07:22 CST
(2)顯示明天時間
[root@hadoop101 ~]#date -d '-1 days ago'
2017年 06月 20日 星期日 21:07:22 CST
1.基本語法
date -s 字符串時間
2.案例實操
(1)設置系統當前時間
[root@hadoop101 ~]# date -s "2017-06-19 20:52:18"
1.基本語法
cal [選項] (功能描述:不加選項,顯示本月日曆)
2.選項說明
選項 |
功能 |
具體某一年 |
顯示這一年的日曆 |
3.案例實操
(1)查看當前月的日曆
[root@hadoop101 ~]# cal
(2)查看2017年的日曆
[root@hadoop101 ~]# cal 2017
1.基本語法
useradd 用戶名 (功能描述:添加新用戶)
useradd -g 組名 用戶名 (功能描述:添加新用戶到某個組)
2.案例實操
(1)添加一個用戶
[root@hadoop101 ~]# useradd tangseng
[root@hadoop101 ~]#ll /home/
1.基本語法
passwd 用戶名 (功能描述:設置用戶密碼)
2.案例實操
(1)設置用戶的密碼
[root@hadoop101 ~]# passwd tangseng
1.基本語法
id 用戶名
2.案例實操
(1)查看用戶是否存在
[root@hadoop101 ~]#id tangseng
1)基本語法
[root@hadoop101 ~]# cat /etc/passwd
su: swith user 切換用戶
1.基本語法
su 用戶名稱 (功能描述:切換用戶,只能得到用戶的執行權限,不能得到環境變量)
su - 用戶名稱 (功能描述:切換到用戶並得到該用戶的環境變量及執行權限)
2.案例實操
(1)切換用戶
[root@hadoop101 ~]#su tangseng
[root@hadoop101 ~]#echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@hadoop101 ~]#exit
[root@hadoop101 ~]#su - tangseng
[root@hadoop101 ~]#echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/tangseng/bin
1.基本語法
(1)userdel 用戶名 (功能描述:刪除用戶但保存用戶主目錄)
(2)userdel -r 用戶名 (功能描述:用戶和用戶主目錄,都刪除)
2.選項說明
表1-23
選項 |
功能 |
-r |
刪除用戶的同時,刪除與用戶相關的全部文件。 |
3.案例實操
(1)刪除用戶但保存用戶主目錄
[root@hadoop101 ~]#userdel tangseng
[root@hadoop101 ~]#ll /home/
(2)刪除用戶和用戶主目錄,都刪除
[root@hadoop101 ~]#useradd zhubajie
[root@hadoop101 ~]#ll /home/
[root@hadoop101 ~]#userdel -r zhubajie
[root@hadoop101 ~]#ll /home/
1.基本語法
(1)whoami (功能描述:顯示自身用戶名稱)
(2)who am i (功能描述:顯示登陸用戶的用戶名)
2.案例實操
(1)顯示自身用戶名稱
[root@hadoop101 opt]# whoami
(2)顯示登陸用戶的用戶名
[root@hadoop101 opt]# who am i
1.添加jinghang用戶,並對其設置密碼。
[root@hadoop101 ~]#useradd jinghang
[root@hadoop101 ~]#passwd jinghang
2.修改配置文件
[root@hadoop101 ~]#vi /etc/sudoers
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,以下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
jinghang ALL=(ALL) ALL
或者配置成採用sudo命令時,不須要輸入密碼
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
jinghang ALL=(ALL) NOPASSWD:ALL
修改完畢,如今能夠用jinghang賬號登陸,而後用命令 sudo ,便可得到root權限進行操做。
3.案例實操
(1)用普通用戶在/opt目錄下建立一個文件夾
[jinghang@hadoop101 opt]$ sudo mkdir module
[root@hadoop101 opt]# chown jinghang:jinghang module/
1.基本語法
usermod -g 用戶組 用戶名
2.選項說明
選項 |
功能 |
-g |
修改用戶的初始登陸組,給定的組必須存在 |
3.案例實操
(1)將用戶加入到用戶組
[root@hadoop101 opt]#usermod -g root zhubajie
每一個用戶都有一個用戶組,系統能夠對一個用戶組中的全部用戶進行集中管理。不一樣Linux 系統對用戶組的規定有所不一樣,
如Linux下的用戶屬於與它同名的用戶組,這個用戶組在建立用戶時同時建立。
用戶組的管理涉及用戶組的添加、刪除和修改。組的增長、刪除和修改實際上就是對/etc/group文件的更新。
1.基本語法
groupadd 組名
2.案例實操
(1)添加一個xitianqujing組
[root@hadoop101 opt]#groupadd xitianqujing
1.基本語法
groupdel 組名
2.案例實操
(1)刪除xitianqujing組
[root@hadoop101 opt]# groupdel xitianqujing
1.基本語法
groupmod -n 新組名 老組名
2.選項說明
選項 |
功能描述 |
-n<新組名> |
指定工做組的新組名 |
3.案例實操
(1)修改jinghang組名稱爲jinghang1
[root@hadoop101 ~]#groupadd xitianqujing
[root@hadoop101 ~]# groupmod -n xitian xitianqujing
1.基本操做
[root@hadoop101 jinghang]# cat /etc/group
Linux系統是一種典型的多用戶系統,不一樣的用戶處於不一樣的地位,擁有不一樣的權限。爲了保護系統的安全性,Linux系統對不一樣的用戶訪問同一文件(包括目錄文件)的權限作了不一樣的規定。在Linux中咱們可使用ll或者ls -l命令來顯示一個文件的屬性以及文件所屬的用戶和組。
1.從左到右的10個字符表示,如圖1-154所示:
若是沒有權限,就會出現減號[ - ]而已。從左至右用0-9這些數字來表示:
(1)0首位表示類型
在Linux中第一個字符表明這個文件是目錄、文件或連接文件等等
- 表明文件
d 表明目錄
l 連接文檔(link file);
(2)第1-3位肯定屬主(該文件的全部者)擁有該文件的權限。---User
(3)第4-6位肯定屬組(全部者的同組用戶)擁有該文件的權限,---Group
(4)第7-9位肯定其餘用戶擁有該文件的權限 ---Other
2.rxw做用文件和目錄的不一樣解釋
(1)做用到文件:
[ r ]表明可讀(read): 能夠讀取,查看
[ w ]表明可寫(write): 能夠修改,可是不表明能夠刪除該文件,刪除一個文件的前提條件是對該文件所在的目錄有寫權限,才能刪除該文件.
[ x ]表明可執行(execute):能夠被系統執行
(2)做用到目錄:
[ r ]表明可讀(read): 能夠讀取,ls查看目錄內容
[ w ]表明可寫(write): 能夠修改,目錄內建立+刪除+重命名目錄
[ x ]表明可執行(execute):能夠進入該目錄
3.案例實操
[root@hadoop101 ~]# ll
總用量 104
-rw-------. 1 root root 1248 1月 8 17:36 anaconda-ks.cfg
drwxr-xr-x. 2 root root 4096 1月 12 14:02 dssz
lrwxrwxrwx. 1 root root 20 1月 12 14:32 houzi -> xiyou/dssz/houge.tx
文件基本屬性介紹,如圖1-155所示:
圖1-155 文件基本屬性介紹
(1)若是查看到是文件:連接數指的是硬連接個數。建立硬連接方法
ln [原文件] [目標文件]
[root@hadoop101 ~]# ln xiyou/dssz/houge.txt ./hg.txt
(2)若是查看的是文件夾:連接數指的是子文件夾個數。
[root@hadoop101 ~]# ls -al xiyou/
總用量 16
drwxr-xr-x. 4 root root 4096 1月 12 14:00 .
dr-xr-x---. 29 root root 4096 1月 12 14:32 ..
drwxr-xr-x. 2 root root 4096 1月 12 14:30 dssz
drwxr-xr-x. 2 root root 4096 1月 12 14:04 mingjie
1.基本語法
如圖1-156所示
第一種方式變動權限
chmod [{ugoa}{+-=}{rwx}] 文件或目錄
第二種方式變動權限
chmod [mode=421 ] [文件或目錄]
2.經驗技巧
u:全部者 g:全部組 o:其餘人 a:全部人(u、g、o的總和)
r=4 w=2 x=1 rwx=4+2+1=7
3.案例實操
(1)修改文件使其所屬主用戶具備執行權限
[root@hadoop101 ~]# cp xiyou/dssz/houge.txt ./
[root@hadoop101 ~]# chmod u+x houge.txt
(2)修改文件使其所屬組用戶具備執行權限
[root@hadoop101 ~]# chmod g+x houge.txt
(3)修改文件所屬主用戶執行權限,並使其餘用戶具備執行權限
[root@hadoop101 ~]# chmod u-x,o+x houge.txt
(4)採用數字的方式,設置文件全部者、所屬組、其餘用戶都具備可讀可寫可執行權限。
[root@hadoop101 ~]# chmod 777 houge.txt
(5)修改整個文件夾裏面的全部文件的全部者、所屬組、其餘用戶都具備可讀可寫可執行權限。
[root@hadoop101 ~]# chmod -R 777 xiyou/
1.基本語法
chown [選項] [最終用戶] [文件或目錄] (功能描述:改變文件或者目錄的全部者)
2.選項說明
選項 |
功能 |
-R |
遞歸操做 |
3.案例實操
(1)修改文件全部者
[root@hadoop101 ~]# chown jinghang houge.txt
[root@hadoop101 ~]# ls -al
-rwxrwxrwx. 1 jinghang root 551 5月 23 13:02 houge.txt
(2)遞歸改變文件全部者和全部組
[root@hadoop101 xiyou]# ll
drwxrwxrwx. 2 root root 4096 9月 3 21:20 xiyou
[root@hadoop101 xiyou]# chown -R jinghang:jinghang xiyou/
[root@hadoop101 xiyou]# ll
drwxrwxrwx. 2 jinghang jinghang 4096 9月 3 21:20 xiyou
1.基本語法
chgrp [最終用戶組] [文件或目錄] (功能描述:改變文件或者目錄的所屬組)
2.案例實操
(1)修改文件的所屬組
[root@hadoop101 ~]# chgrp root houge.txt
[root@hadoop101 ~]# ls -al
-rwxrwxrwx. 1 jinghang root 551 5月 23 13:02 houge.txt
find指令將從指定目錄向下遞歸地遍歷其各個子目錄,將知足條件的文件顯示在終端。
1.基本語法
find [搜索範圍] [選項]
2.選項說明
選項 |
功能 |
-name<查詢方式> |
按照指定的文件名查找模式查找文件 |
-user<用戶名> |
查找屬於指定用戶名全部文件 |
-size<文件大小> |
按照指定的文件大小查找文件。 |
3.案例實操
(1)按文件名:根據名稱查找/目錄下的filename.txt文件。
[root@hadoop101 ~]# find xiyou/ -name 「*.txt」
(2)按擁有者:查找/opt目錄下,用戶名稱爲-user的文件
[root@hadoop101 ~]# find xiyou/ -user jinghang
(3)按文件大小:在/home目錄下查找大於200m的文件(+n 大於 -n小於 n等於)
[root@hadoop101 ~]find /home -size +204800
管道符,「|」,表示將前一個命令的處理結果輸出傳遞給後面的命令處理
1.基本語法
grep 選項 查找內容 源文件
2.選項說明
選項 |
功能 |
-n |
顯示匹配行及行號。 |
3.案例實操
(1)查找某文件在第幾行
[root@hadoop101 ~]# ls | grep -n test
查找命令在那個目錄下
1.基本語法
which 命令
2.案例實操
which ll
1.基本語法
gzip 文件 (功能描述:壓縮文件,只能將文件壓縮爲*.gz文件)
gunzip 文件.gz (功能描述:解壓縮文件命令)
2.經驗技巧
(1)只能壓縮文件不能壓縮目錄
(2)不保留原來的文件
3.案例實操
(1)gzip壓縮
[root@hadoop101 ~]# ls
test.java
[root@hadoop101 ~]# gzip houge.txt
[root@hadoop101 ~]# ls
houge.txt.gz
(2)gunzip解壓縮文件
[root@hadoop101 ~]# gunzip houge.txt.gz
[root@hadoop101 ~]# ls
houge.txt
1.基本語法
zip [選項] XXX.zip 將要壓縮的內容 (功能描述:壓縮文件和目錄的命令)
unzip [選項] XXX.zip (功能描述:解壓縮文件)
2.選項說明
zip選項 |
功能 |
-r |
壓縮目錄 |
unzip選項 |
功能 |
-d<目錄> |
指定解壓後文件的存放目錄 |
3.經驗技巧
zip 壓縮命令在window/linux都通用,能夠壓縮目錄且保留源文件。
4.案例實操
(1)壓縮 1.txt 和2.txt,壓縮後的名稱爲mypackage.zip
[root@hadoop101 opt]# touch bailongma.txt
[root@hadoop101 ~]# zip houma.zip houge.txt bailongma.txt
adding: houge.txt (stored 0%)
adding: bailongma.txt (stored 0%)
[root@hadoop101 opt]# ls
houge.txt bailongma.txt houma.zip
(2)解壓 mypackage.zip
[root@hadoop101 ~]# unzip houma.zip
Archive: houma.zip
extracting: houge.txt
extracting: bailongma.txt
[root@hadoop101 ~]# ls
houge.txt bailongma.txt houma.zip
(3)解壓mypackage.zip到指定目錄-d
[root@hadoop101 ~]# unzip houma.zip -d /opt
[root@hadoop101 ~]# ls /opt/
1.基本語法
tar [選項] XXX.tar.gz 將要打包進去的內容 (功能描述:打包目錄,壓縮後的文件格式.tar.gz)
2.選項說明
選項 |
功能 |
-z |
打包同時壓縮 |
-c |
產生.tar打包文件 |
-v |
顯示詳細信息 |
-f |
指定壓縮後的文件名 |
-x |
解包.tar文件 |
3.案例實操
(1)壓縮多個文件
[root@hadoop101 opt]# tar -zcvf houma.tar.gz houge.txt bailongma.txt
houge.txt
bailongma.txt
[root@hadoop101 opt]# ls
houma.tar.gz houge.txt bailongma.txt
(2)壓縮目錄
[root@hadoop101 ~]# tar -zcvf xiyou.tar.gz xiyou/
xiyou/
xiyou/mingjie/
xiyou/dssz/
xiyou/dssz/houge.txt
(3)解壓到當前目錄
[root@hadoop101 ~]# tar -zxvf houma.tar.gz
(4)解壓到指定目錄
[root@hadoop101 ~]# tar -zxvf xiyou.tar.gz -C /opt
[root@hadoop101 ~]# ll /opt/