按照本身目前的水平所整理,以備往後杯具時查閱(需定時更新)
首先打開終端,最初要使用的
命令:
啓用root用戶,使用sudo passwd
命令
禁用root用戶,使用passwd -l
ls [-adlsht]:列出當前目錄下的非隱藏文件
-a 顯示全部文件
-d 顯示目錄自己
-l 以列表形式顯示詳細信息
-s 顯示文件大小,單位塊
-h 帶度量單位顯示
-t 按最新修改時間顯示
Linux中3種時間屬性
atime access 讀取或執行時變化
ctime change 變動權限,屬主,連接數時變化
mtime modify 修改內容時變化
cd PATH:改變當前操做目錄路徑到PATH
cd .. 返回上一層
cd -
返回上一
次使用的
目錄
cd 返回用戶主目錄,等同於cd ~
pwd 顯示當前路徑
如今介紹一個高級的路徑變動
命令:
pushd PATH:創建目錄棧,在多個目錄間切換。切換到PATH的目錄,並把原目錄和PATH目錄壓入到一個虛擬的堆棧中;若是不指定PATH,則會回到前一個目錄,並把堆棧中最近的兩個目錄做交換。
-n 不改變當前目錄,將目錄加入棧
+N N表示數字,從0開始,切換到該目錄
dirs: 列出當前堆棧中保存的目錄列表。
-v 棧式顯示目錄
-c 清空堆棧
popd:彈出堆棧中0號目錄。
-n 不改變當前目錄
+N N表數字,彈出該目錄
mkdir NAME:在當前路徑下建立文件夾NAME
touch NAME:在當前路徑下建立普通文件NAME
mknod NAME:用來新建P、B、C型NAME文件
cat [-nb] NAME:顯示NAME文件的內容在終端中
-n 帶行號
-b 對空白行不編號
mv NAME1 NAME2:將NAME1重命名爲NAME2
rm file:刪除file而不須要確認
-d Dir1 刪除Dir1目錄而不須要確認(至關於DOS中的deltree)。
-i file1(提示用戶確認以後刪除file1)
-f file2(若是file2已經存在,則這個
命令覆蓋其內容時不須要確認)
-r * 遞歸刪除文件,若是當前目錄還有子目錄,則也刪除其中的文件和目錄
-rf xx 刪除xx目錄
Linux文件權限
chmod 751 test.java:結果test.java的權限是-rwxr-x--x,7表示user的3個權限都有,既111,且正好是十進制的7;5換成二進制是101,同理1是other位置的權限,是x執行。
還可使用字母表示,u、g、o分別表示3個組,+表示賦予,-表示撤銷
目錄有執行權限才能打開,但前提是該目錄的上次目錄要有粘滯位,不然會繼承上級的執行權限。
高級權限:
drwxrwxrwt
t表示粘滯位,做用是讓用戶只能刪除屬於本身的文件
假如原本在該位上有x, 則這些特別標誌 (suid, sgid, sticky) 顯示爲小寫字母 (s, s, t). 不然, 顯示爲大寫字母 (S, S, T)
chmod a+t x.X
特殊標誌位
Suid:set user id
Sgid:set group id
sTicky:sticky bit
特殊標誌也是由3個二進制位abc表示,c表示T,b表示Sgid,a表示Suid
eg:101表示設置了該文件的Suid和sTicky位,也就是八進制的5
特殊標誌位放在權限位的前面
eg:一個文件test類型標識爲-rwxr-xrwx
chmod 7747 test
結果爲-rwsr-Srwt
7747等於111 111 100 111
umask number 修改建立時的默認權限
系統規定目錄的建立能夠包含執行權限,因此最高是777;而文件不能默認包含執行,因此最高是666。
umask就是默認權限的反碼
eg:umask=022時,建立的目錄權限是755,文件權限是644。
umask=002時,目錄權限是775,文件權限是664
經常使用的umask:
022:755 644
027:750 640
002:775 664
006:771 660
007:770 660
groups username 顯示username所在的全部組
改變文件的組和全部者
命令chown
chown [-cfhvR] user[:group] file...
-c若文件擁有者確實已更改,才顯示其更改動做
-f若沒法更改,也不要顯示錯誤信息
-h只對link文件進行更改,而非該link真正指向的檔案
-v顯示擁有者變動的詳細資料
-R對目錄下全部文件文件夾遞歸更改
user:[group]指的是更改成group組中的user用戶
eg:chown -R fenix:root *
表示將當前目錄下全部文件和文件夾改成root組的使用者fenix
chgrp [-hR] groupname filename 將文件的屬組變動
-h將符號連接變動
-R遞歸變動
id username 顯示username的uid,gid和自身id
顯示進程
命令
ps [-Aw][aux]:當前
bash中運行的進程
-A列出全部進程
-w顯示較多信息
-au顯示詳細信息
-aux顯示全部包含其餘使用者的進程
eg: ps aux | grep nautilus 顯示nautilus進程
pstree:樹狀顯示進程
-a顯示該進程的完整指令和參數
-c若有重覆的進程名, 則分開列出
renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]:從新指定一個或多個進程的優先序
將行程 id 爲987及32的行程與行程擁有者爲daemon 及root 的優先序號碼加1。eg:renice +1 987 -u daemon root -p 32
pkill NAME
:快速殺掉進程。
eg
:
pkill firefox
skill [signal to send] [options]
:選擇程序的規則
選擇程序的規則能夠是, 終端機代號,使用者名稱,程序代號,命令名稱
-t 終端機代號 ( tty 或 pty )
-u 使用者名稱
-p 程序代號 ( pid )
-c 命令名稱
eg:中止三個使用者 user1,user2,user3。
skill -STOP user1 user2 user3
kill [-s signal|-p] [-a] PID
:終止進程命令
kill -l
:查看全部信號量
- 0 - normal
- 1 - signal SIGHUP, Hangup. #重啓
- 2 - signal SIGINT, Interrupt #中斷,ctrl+c
- 3 - signal SIGQUIT, Quit
- 4 - signal SIGILL, Illegal instruction
- 5 - signal SIGTRAP, Trace/breakpoint trap
- 6 - signal SIGABRT, Aborted
- 7 - signal SIGEMT, Emulation trap
- 8 - signal SIGFPE, Arithmetic exception
- 9 - signal SIGKILL, Killed #無條件關閉
- 10 - signal SIGBUS, Bus error
- 11 - signal SIGSEGV, Segmentation fault
- 12 - signal SIGSYS, Bad system call
- 13 - signal SIGPIPE, Broken pipe
- 14 - signal SIGSTOP, Stopped (signal)
- 15 - signal SIGTERM, Terminated #溫和的結束
- 16 - signal SIGXCPU, CPU time limit exceeded
- 17 - signal SIGTTIN, Stopped (tty input)
- 18 - signal SIGCONT, Continued #恢復,fg、bg
- 19 - signal SIGTTOU, Stopped (tty output)
- 20 - signal SIGTSTP, Stopped (user) #暫停運行,ctrl+z
- 21 - signal SIGXFSZ, File size limit exceeded
top命令:動態顯示當前運行進程
up 後面表示系統運行了多長時間
load average: 0.06, 0.60, 0.48 系統負載,即任務隊列的平均長度。
三個數值分別爲 1分鐘、5分鐘、15分鐘前到如今的平均值
Cpu(s): 0.3% us 用戶空間佔用CPU百分比,1.0% sy 內核空間佔用CPU百分比,0.0% ni 用戶進程空間內改變過優先級的進程佔用CPU百分比,98.7% id 空閒CPU百分比,0.0% wa 等待輸入輸出的CPU時間百分比
PR 優先級
NI nice值,負值表示高優先級
VIRT 進程使用的虛擬內存總量
RES 進程使用的,未被換出的物理內存大小,kb單位
SHR 共享內存大小,kb單位
S 進程狀態
s睡眠,r運行,t跟蹤或中止,z殭屍,d不可中斷的睡眠
%CPU 上次更新到如今的CPU時間佔用百分比
%MEM 進程使用的物理內存百分比
TIME+ 進程使用的CPU時間總計,1/100秒單位
COMMAND
命令行
按f鍵能夠選擇顯示列,按o能夠改變列的顯示順序,按R鍵能夠將當前排序倒轉
類debian發行版的linux使用的apt軟件管理
命令:
apt-get [-qy] [-c config_file] [options] software...
q 在後臺環境執行
y 自動進行回答y的響應
c 後接配置文件
options
update,install,remove,purge,clean,dist-upgrade
apt-cache [搜索項目]
搜索項目
search,show,
showpkg 列出所接軟件的依賴屬性及功能
dump 列出全部軟件標頭及相關的依賴屬性軟件
pkgnames 列出本系統全部軟件名稱
軟件管理的高級
命令
dpkg [-ilLSC] <package>
-i <package> 安裝軟件包
-l <package> 查看軟件包是否安裝
-L <package> 查看軟件包中包含哪些文件
-S /path/to/file 查看系統中某文件是由哪一個軟件包提供的
-C 查看哪些軟件包未完成安裝
網絡
命令類:
ifup eth0 打開eth0,
ifdown eth1 關閉eth1
ifconfig [interface] [options],設置網絡設備的
命令
interface接口名,如eth0
options,功能選項
up & down
mtu
netmask
broadcast
eg:ifconfig eth0 192.168.1.1 netmask 255.255.0.0 mtu 8000
route [-nee]
n直接使用ip
ee更詳細的信息
ping [-bcstnM] IP
b 接broadcast的ip,對整個網段ping
c 後接次數
n 不進行ip和主機名的反查
s 擴增的icmp包
M 設置MTU
tcpdump -i eth0 -nn
:偵測網絡瀏覽的命令,網卡變爲混雜模式,root權限
-i 後接網絡接口,如eth0
-nn 以ip和port顯示,而不是hostname
tcpdump -i eth0 -nn port 21
port 21 監聽特定的21port
-X 可列出十六進制以及ascii的內容
ip address show:顯示當前ip地址詳細信息
arp -n:顯示arp表的內容,包括網段內機器物理地址MAC
netstat [-tulnp]
-t tcp協議
-u udp協議
-l 監聽中的
-n 不解析主機
-p pid
eg:netstat -anp |grep 8080 8080端口占用狀況
其餘
命令
ctrl+z:暫時掛起當前終端進程
jobs:查看當前終端掛起的進程
fg number:將number號掛起進程激活在前臺運行
bg number:將number號掛起進程激活在後臺執行
uname -a:查看內核
cat /etc/issue:查看ubuntu版本
cat /proc/cpuinfo
lshw:查看當前硬件信息
free -l:查看當前的內存使用
gnome-control-center:控制中心
gnome-system-monitor:系統管理
find [路徑] [-參數] [需求]
eg: find /etc -name *.d
find . -perm 664
find /usr/share/doc -mtime 0
locate 文件名
whereis:是來尋找
命令的二進制文件,同時也會找到其幫助文件
which 和where 類似,只是咱們所設置的環境變量中設置好的路徑中尋找
who:查看當前在線上的用戶狀況
w
命令是who
命令的一個加強版
uptime:顯示系統運行時間
last:顯示系統開機以來或是從每個月登入者的訊息
tail:從參數制定點開始將文件內容寫到標準輸出
格式 tail [-fr] [-cnmbk Number] [file]
Number 變量指定將多少單元寫入標準輸出。Number變量的值能夠是正的或負的整數,+表示從開頭,-表示從結尾
-f表示動態的顯示文件的內容
-r表示從文件末尾以逆序方式顯示
-c從Number表示的字節位開始讀
-n從Number表示的行位開始讀
-m從Number表示的多字節字符位置開始讀
-b從Number表示的 512 字節塊位置開始讀
-k從Number表示的 1KB 塊位置開始讀
改變文件的高級屬性
chattr [-RV] [-+=AacDdijsSu] [-v version] files...
R:遞歸處理全部的文件及子目錄
V:周詳顯示修改內容,並打印輸出
-:失效屬性。
+:激活屬性。
= :指定屬性。
A:Atime,告訴系統不要修改對這個文件的最後訪問時間。
S:Sync,一旦應用程式對這個文件執行了寫操做,使系統即時把修改的結果寫到磁盤。
a:Append Only,系統只容許在這個文件以後追加數據,不容許全部進程覆蓋或截斷這個文件。若是目錄具備這個屬性,系統將只容許在這個目錄下創建和修改文件,而不容許刪除全部文件。
i:Immutable,系統不容許對這個文件進行全部的修改。若是目錄具備這個屬性,那麼全部的進程只能修改目錄之下的文件,不容許創建和刪除文件。
D:檢查壓縮文件中的錯誤。
d:No dump,在進行文件系統備份時,dump程式將忽略這個文件。
C:Compress,系統以透明的方式壓縮這個文件。從這個文件讀取時,返回的是解壓以後的數據;而向這個文件中寫入數據時,數據首先被壓縮以後才寫入磁盤。
S:Secure Delete,讓系統在刪除這個文件時,使用0填充文件所在的區域。
u:Undelete,當一個應用程式請求刪除這個文件,系統會保留其數據塊以便之後可以恢復刪除這個文件。
lsattr [-adRvV] files... 查看文件的高級屬性
a所有文件和目錄
d顯示目錄名稱
R遞歸
v文件,目錄版本
V版本信息
整理的有點亂……