who
: 顯示當前登陸用戶 如圖1-1所示who am i
: 顯示當前登陸用戶信息 如圖1-2所示whoami
: 顯示當前登陸用戶名 如圖1-3所示who -q
: 統計當前登陸用戶個數和顯示用戶名 如圖1-4所示who -u
: 顯示閒置時間,若該用戶在前一分鐘以內有進行任何動做,將標示成"."號,若是該用戶已超過24小時沒有任何動做,則標示出"old"字符串。 如圖1-5所示who -H
: 顯示各欄信息 如圖1-6所示who -m
: 等同於 who am i 如圖1-7所示who -w
: 顯示用戶的信息狀態欄 如圖1-8所示who -H -l
: 顯示用戶登陸來源 如圖1-9所示who -T -H
: 顯示終端屬性 如圖1-10所示w
: 能夠看到登陸用戶的信息與cpu佔用率。last
:查看最近登陸的用戶信息。-c
:加上備註文字,備註文字保存在passwd的備註欄中。html
-d
:指定用戶登入時的主目錄,替換系統默認值/home/ <用戶名>
-D
:變動預設值。python
-e
:指定帳號的失效日期,日期格式爲MM/DD/YY,例如06/30/12。缺省表示永久有效。linux
-f
:指定在密碼過時後多少天即關閉該帳號。若是爲0帳號當即被停用;若是爲-1則帳號一直可用。默認值爲-1.nginx
-g
:指定用戶所屬的羣組。值可使組名也能夠是GID。用戶組必須已經存在的,期默認值爲100,即users。git
-G
:指定用戶所屬的附加羣組。web
-m
:自動創建用戶的登入目錄。正則表達式
-M
:不要自動創建用戶的登入目錄。redis
-n
:取消創建以用戶名稱爲名的羣組。sql
-r
:創建系統帳號。shell
-s
:指定用戶登入後所使用的shell。默認值爲/bin/bash。
-u
:指定用戶ID號。該值在系統中必須是惟一的。0~499默認是保留給系統用戶帳號使用的,因此該值必須大於499。useradd admin -u 512 -d /home/em -g root -c "測試" -e 14/10/2018 -n
: 建立一個名爲admin的用戶,設置用戶id爲512,替換默認/home/admin目錄爲/home/em,而且添加此用戶爲root組用戶,添加備註,設置帳號失效日期,取消創建以用戶名稱爲名的羣組。 如圖1-11所示passwd admin
:給admin設置密碼爲123456。ssh登陸新用戶
: 如圖1-12groups
: 查看當前用戶用戶組 如圖1-13所示進入根目錄下etc目錄中,查看passwd文件,裏面包含了用戶信息
: 如圖1-14所示admin:x:512:0:測試:/home/em:/bin/bash
userdel username
: 刪除用戶userdel -f username
: 刪除用戶帳號與相關的文件su username
:須要輸入切換用戶的密碼。a
: 顯示全部文件及目錄 (包括以.開頭的隱藏文件或文件夾)-l
: 除文件名稱外,亦將文件型態、權限、擁有者、文件大小等資訊詳細列出-r
: 將文件以相反次序顯示(原定依英文字母次序)-t
: 將文件依創建時間之前後次序列出-A
: 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)-F
: 在列出的文件名稱後加一符號;例如可執行檔則加 "*", 目錄則加 "/"-R
: 若目錄下有文件,則如下之文件亦皆依序列出(遞歸文件夾顯示全部文件)cat 文件名
:顯示文件內容。cat -n 文件名
: 顯示行號。cat 文件 | head -3
: 查看文件前三行。cat 文件1 文件2
:將兩個文件鏈接起來輸出顯示。head -3 文件
: 查看文件前三行。tail -5 文件
: 查看文件後5行。less 文件
: 分頁查看文件,less分頁內容少。more 文件
: 分頁查看文件,more分頁內容多。touch
: touch命令用於修改文件或者目錄的時間屬性,包括存取時間和更改時間。若文件不存在,系統會創建一個新的文件。顯示時間記錄可用ls -l查看文件信息。touch a 文件
: 改變檔案的讀取時間記錄。touch m 文件
: 改變檔案的修改時間記錄。mkdir folder
: 建立名爲folder的空文件夾。mkdir -p a/b
: 建立二級目錄,a文件夾下有b文件夾。rm
:刪除文件與文件夾。-i
: 刪除前逐一詢問確認。-f
: 即便原檔案屬性設爲惟讀,亦直接刪除,無需逐一確認。-r
:將目錄及如下之檔案亦逐一刪除。rm -f 文件
:刪除文件且以yes跳過詢問操做。rm -rf 文件夾
:刪除文件夾及文件夾內的文件。-a
:此選項一般在複製目錄時使用,它保留連接、文件屬性,並複製目錄下的全部內容。其做用等於dpR參數組合。-d
:複製時保留連接。這裏所說的連接至關於Windows系統中的快捷方式。-f
:覆蓋已經存在的目標文件而不給出提示。-i
:與-f選項相反,在覆蓋目標文件以前給出提示,要求用戶確認是否覆蓋,回答"y"時目標文件將被覆蓋。-p
:除複製文件的內容外,還把修改時間和訪問權限也複製到新文件中。-r
:若給出的源文件是一個目錄文件,此時將複製該目錄下全部的子目錄和文件。-l
:不復制文件,只是生成連接文件。cp 文件 路徑/新文件名
:複製文件到新路徑並重命名。例:cp a.py code/aa.py
cp 文件 路徑
:複製文件到其餘路徑,不更改文件名字。例: cp b.py code
cp 文件夾 -r 路徑
:複製文件夾全部內容到新的路徑,不會複製文件夾自己。cp 文件夾 -r 路徑/新文件夾名字
: 複製文件夾內容到路徑下的新文件夾中。-i
: 若指定目錄已有同名文件,則先詢問是否覆蓋舊文件。-f
: 在mv操做要覆蓋某已有的目標文件時不給任何指示。mv 文件 文件
:將文件1更名爲文件2。mv 文件 文件夾
:將文件移動到文件夾。mv 文件夾 文件夾
:目標目錄已存在,將源目錄移動到目標目錄;目標目錄不存在則更名。u
: 表示該文件的擁有者,g 表示與該文件的擁有者屬於同一個羣體(group)者,o 表示其餘之外的人,a 表示這三者皆是。+
: 表示增長權限、- 表示取消權限、= 表示惟一設定權限。r
: 表示可讀取,w 表示可寫入,x 表示可執行,X 表示只有當該文件是個子目錄或者該文件已經被設定過爲可執行。-c
: 若該文件權限確實已經更改,才顯示其更改動做-f
: 若該文件權限沒法被更改也不要顯示錯誤訊息-v
: 顯示權限變動的詳細資料-R
: 對目前目錄下的全部文件與子目錄進行相同的權限變動(即以遞迴的方式逐個變動)drwxr-xr-x 2 root root 4096 Oct 13 15:49 abc -rwxr--r-- 1 root root 1158 Oct 10 15:04 a.py -rwxr--r-- 1 root root 440 Oct 10 15:07 b.py -rw-r--r-- 1 root root 56 Oct 13 15:03 code
說明:d表示文件夾,
-rwxr--r--
意思是,當前用戶可執行操做爲rwx
,可讀寫執行,同組用戶可對該文件執行r--
讀操做,其餘用戶可對改文件執行r--
讀操做。
用 ll 命令查看c.py的權限爲 -rwxr--r--
-rw-r--r-- 1 root root 0 Oct 13 16:02 c.py
chmod u+x c.py
:修改c.py文件爲當前用戶的可執行文件。-rwxr--r-- 1 root root 0 Oct 13 16:02 c.py
chmod 754 a.py
:修改c.py爲當前用戶和同組可執行文件。-rwxr-xr-- 1 root root 0 Oct 13 16:02 c.py
說明:7表明
rwx
,5表明r-x
,4表明r--
,若是將三位權限當作三位二進制,爲0就是沒有權限,爲1就是有權限,那rwx
就是二進制的111,r-x
就是二進制的101,r--
就是二進制的100,因此權限754就是給c.py添加當前用戶和同組用戶的可執行文件。
user
: 新的文件擁有者的使用者 IDgroup
: 新的文件擁有者的使用者組(group)chown user 文件
:改變文件的全部者chown root:user 文件
:將文件擁有着設置爲root組的用戶user。chown -R root:admin 文件夾
:將文件夾全部文件全部者設置爲root下admin用戶。clear
:清屏。logout/exit
:退出登陸。cd
:切換目錄。cd ~
回到根目錄pwd
:查看當前工做目錄。man 命令
:得到某個命令的幫助文檔。命令 --help
:得到命令的參數說明。wget 網址
:下載網址的內容。wall 內容
:給全部線上設置mesg y
的用戶發消息,設置爲mesg n
的用戶不會收到,注意root用戶發的消息不能拒絕。wall 加 某個用戶就是對某個用戶發消息,不加參數就是給全部人發。history
:查看全部歷史命令。history -c
:清除歷史命令。history -d 命令編號
:刪除某條歷史命令。!+歷史命令編號
:執行某條命令。date
:查看當前時間。cal
:查看日曆。cal 12 2018
:查看某年某月的日曆。cal 2018
:查看某年日曆。alias 別名="命令"
:給命令起別名,能夠經過別名來執行命令。例:alias ca="cal"
unalias 別名
: 撤銷別名。wc 文件
:統計文件內容行數,字節數,單詞個數。wc -l 文件
:只看文件內容行數。sort a.txt | uniq |wc -l
:排序文件去重再查看行數。sort
排序,uniq
去重。diff 文件1 文件2
:比較兩個文件的不一樣的地方。gzip/gunzip
:壓縮/解壓縮文件。tar -xvf
:解歸檔。ln -s /a/b/c/d.txt haha
:建立一個haha的軟連接能夠直接訪問d.txt文件,若是不加 -s 就是硬連接,至關於文件的引用,只要引用數不爲0 ,文件就會一直存在。echo 內容 > 文件
:再次寫入會覆蓋上次內容。echo 內容 >> 文件
: 追加寫入。echo 內容 > 文件1 2>文件2
:錯誤輸出重定向,正確的結果輸入文件1,出錯就輸出文件2。a=10 b=3 echo $a 10 echo $[a+b] 13
-w
: 顯示加寬能夠顯示較多的資訊-au
: 顯示較詳細的資訊rss
: 佔用的記憶體大小r
: 正在執行中s
: 靜止狀態t
: 暫停執行n
: 低優先序的行程ps -ef
:顯示全部的進程kill 進程編號
:關閉進程kill -9 進程編號
:強制殺死某個進程ps -ef | grep httpd | grep -v grep
---進程不包含搜索操做自己這條進程top
:實時顯示進程的狀態停止運行中的進程ctrl+c
暫停進程並置於後臺-ctrl+z
redis-server &
:服務名後面加&放在後臺運行。jobs
---查看後臺進程bg %編號
--- 讓後臺暫停的進程繼續再後臺運行,編號爲後臺進程編號fg %編號
--- 讓後臺進程再前臺運行netstat -nap | grep 80
:查某個端口被誰佔用。Linux系統有7個運行級別(runlevel)
運行級別0
:系統停機狀態,系統默認運行級別不能設爲0,不然不能正常啓動運行級別1
:單用戶工做狀態,root權限,用於系統維護,禁止遠程登錄運行級別2
:多用戶狀態(沒有NFS)運行級別3
:徹底的多用戶狀態(有NFS),登錄後進入控制檯命令行模式運行級別4
:系統未使用,保留運行級別5
:X11控制檯,登錄後進入圖形GUI模式運行級別6
:系統正常關閉並重啓,默認運行級別不能設爲6,不然不能正常啓動shutdown
: 關機shutdown -c
:取消關機init 0
:關機且不發送通知init 6
:重啓rebot
:重啓linux目錄說明
/bin
:bin是Binary的縮寫, 這個目錄存放着最常用的命令。
/boot
:這裏存放的是啓動Linux時使用的一些核心文件,包括一些鏈接文件以及鏡像文件。
/dev
:dev是Device(設備)的縮寫, 該目錄下存放的是Linux的外部設備,在Linux中訪問設備的方式和訪問文件的方式是相同的。
/etc
:這個目錄用來存放全部的系統管理所須要的配置文件和子目錄。
/home
:用戶的主目錄,在Linux中,每一個用戶都有一個本身的目錄,通常該目錄名是以用戶的帳號命名的。
/lib
:這個目錄裏存放着系統最基本的動態鏈接共享庫,其做用相似於Windows裏的DLL文件。幾乎全部的應用程序都須要用到這些共享庫。
/lost+found
:這個目錄通常狀況下是空的,當系統非法關機後,這裏就存放了一些文件。
/media
:linux系統會自動識別一些設備,例如U盤、光驅等等,當識別後,linux會把識別的設備掛載到這個目錄下。
/mnt
:系統提供該目錄是爲了讓用戶臨時掛載別的文件系統的,咱們能夠將光驅掛載在/mnt/上,而後進入該目錄就能夠查看光驅裏的內容了。
/opt
: 這是給主機額外安裝軟件所擺放的目錄。好比你安裝一個ORACLE數據庫則就能夠放到這個目錄下。默認是空的。
/proc
:這個目錄是一個虛擬的目錄,它是系統內存的映射,咱們能夠經過直接訪問這個目錄來獲取系統信息。
這個目錄的內容不在硬盤上而是在內存裏,咱們也能夠直接修改裏面的某些文件,好比能夠經過下面的命令來屏蔽主機的ping命令,使別人沒法ping你的機器:
/root
:該目錄爲系統管理員,也稱做超級權限者的用戶主目錄。
/sbin
:s就是Super User的意思,這裏存放的是系統管理員使用的系統管理程序。
/selinux
:這個目錄是Redhat/CentOS所特有的目錄,Selinux是一個安全機制,相似於windows的防火牆,可是這套機制比較複雜,這個目錄就是存放selinux相關的文件的。
/srv
:該目錄存放一些服務啓動以後須要提取的數據。
/sys
: 這是linux2.6內核的一個很大的變化。該目錄下安裝了2.6內核中新出現的一個文件系統 sysfs 。sysfs文件系統集成了下面3種文件系統的信息:針對進程信息的proc文件系統、針對設備的devfs文件系統以及針對僞終端的devpts文件系統。
該文件系統是內核設備樹的一個直觀反映。當一個內核對象被建立的時候,對應的文件和目錄也在內核對象子系統中被建立。
/tmp
:這個目錄是用來存放一些臨時文件的。
/usr
:這是一個很是重要的目錄,用戶的不少應用程序和文件都放在這個目錄下,相似於windows下的program files目錄。
/usr/bin
:系統用戶使用的應用程序。
/usr/sbin
:超級用戶使用的比較高級的管理程序和系統守護程序。
/usr/src
:內核源代碼默認的放置目錄。
/var
:這個目錄中存放着在不斷擴充着的東西,咱們習慣將那些常常被修改的目錄放在這個目錄下。包括各類日誌文件。命令1 | 命令2
:命令1的輸出做爲命令2的輸入。ls | grep codes
:查詢codes目錄是否存在。命令1 || 命令2 || 命令3
:從左至右依此執行,誰正確就執行誰,後面再也不執行。命令1 && 命令2 && 命令3
:從左到右,依此執行。yum search git
---查找軟件yum install git
--- 安裝軟件 yun -y install git ---跳過yes步驟,以yes來安裝yum remove git
--- 卸載軟件yum info git
--- 查看軟件信息yum update 軟件名字
更新軟件yum update
----- 更新全部的軟件yum list installed
--- 列出已經安裝的文件step 1
:下載源代碼 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgzstep 2
:解壓縮 gunzip Python-3.7.0.tgz
step 3
:解歸檔 tar -xvf Python-3.7.0.tar
step 4
:安裝底層依賴庫 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
step 5
:進到解歸檔後的文件夾路徑 cd Python-3.7.0
step 6
:執行可執行文件./configure --prefix=/usr/local/python37 --enable-optimizations
step 7
:構建安裝 make && make install
源代碼構建安裝step 8
:配置PATH環境變量 export PATH=$PATH:/usr/local/python37/bin
step 9
:註冊軟連接(符號連接) ln -s /usr/local/python37/bin/python/3 /usr/bin/python3
nginx
先yum安裝nginx服務器,命令
yum install nginx
systemctl start 服務名字
--- 啓動服務systemctl stop 服務名字
中止服務 ----systemctl restart 服務名字
重複服務 ----systemctl status 服務名字
查看信息 ----systemctl enable 服務名字
---- 開機自啓systemctl disable 服務名字
---- 關閉自啓journalctl -xe
---查看啓動服務失敗的錯誤緣由systemctl status 服務.service
--- 查看失敗錯誤緣由
httpd---Apache
yum安裝httpd服務器,
yum install nginx
防火牆
阿里雲服務器自帶防火牆,咱們能夠不使用它而本身配置,配以前須要關閉阿里雲的防火牆。關閉阿里雲的防火牆-----打開安全組規則,設置端口爲1-65535,打開所有端口。
Linux自帶防火牆firewalld
systemctl start firewalld
: 啓動防火牆服務firewalld-cmd --add-service = 服務
: ---添加服務 配置防火牆---firewalld-cmd --add-port=80/tcp
:---打開端口firewalld-cmd --permanent --add-port=80/tcp
: ---永久打開端口firewalld-cmd --query-port=443/tcp
: ---查詢端口是否打開firewalld-cmd --query-service=ssh
:---查詢是否有某個服務firewalld-cmd --remove-port=443/tcp
:---刪除端口
vim 文件
:進入命令模式,命令模式下按shift + 兩次z
或shift + 冒號
進入末行模式,在末行模式下輸入wq
保存退出,q
退出,wq!
是強制保存退出,按i
進入編輯模式,按Esc
退出編輯模式。vim .vimrc
:.vimrc
文件是vim的配置文件set nu --- 設置行號顯示 syntax on --- 設置語法高亮顯示 set tabstop =4 --- 設置一個tab爲4個空格 map <F2> gg99999dd --- 設置功能鍵,按F2刪除全部內容 inoremap _main if __name__ == '__main__': --- 設置快捷鍵,輸入_main快捷輸入 inoremap _# #!/usr/bin/python3 --- 設置快捷鍵,輸入_#快捷輸入#!/usr/bin/python3
0
:--光標移動到當前行最開始$
:--光標移動到當前行最末尾h
: --光標向左移動l
: --光標向右移動k
:--光標向上移動gg
--光標移到最開始G
: --光標移動到最末尾nG
:--光標移動到第幾行 == nggyy
: --複製光標當前行nyy
:--複製光標當前行到下面n行p
: --粘貼dd
:--刪除光標當前行ndd
: --刪除光標下n行包含當前光標行ctrl+e
: --下翻一行ctrl+y
:--上翻一行ctrl+f
: --向前翻頁ctrl+b
:--向後翻頁u
:--撤銷操所ctrl+r
: --恢復操做ctrl+x ctrl+o
:--代碼提示/word
:-- 查找當前光標下內容中word這個詞?word
: --查找當前光標上內容中word這個詞vim -d 文件1 文件2
--比較兩個文件的區別
:n1,n2s/world1/world2/gice
--- n1行到n2行進行替換:1,$s/world1/world2/gice
--全文替換world1爲world2-g
:全局模式,正則表達式的全局匹配 i
忽略大小寫,c
每次替換都要確認 ,-e
容許錯誤,靜默處理,忽略錯誤:w
: --保存:q
: --退出:set nu
: --設置行號:set ts =4
: --設置tab爲4個空格:set autoindent
:--自動縮進
若是vim打開了多個文件,能夠在末行模式下經過
:b<編號>
切換到其餘文件:ls
查看打開文件編號
:vs anotherfile
垂直拆分兩個窗戶顯示不一樣文件,兩次ctrl+w 切換光標到另外一個文件:sp anotherfile
水平拆分:wqa
: --退出所有窗口:map <F1> gg999999dd
---映射快捷鍵 刪除全部(命令模式下的映射):inoremap _main if __name__ == '__main__':
:---輸入模式下的映射 nore---非遞歸 避免_main死循環改配置
vim .vimrc
--- 必須叫.vimrc這個名字ssh root@112.74.164.93
:遠程鏈接用戶名爲root,主機爲112.74.164.93的服務器。遠程拷貝
scp 文件1 root@112.74.164.93:/root/a.py
--將文件1拷貝到ip93的root目錄下而且名爲a.pyscp root@ip1+絕對路徑 root@ip2+絕對路徑
---將一臺機器的文件 傳到另外一個機器sftp root@112.74.164.93
---ftp遠程下載python配置
python 代碼加
#!/usr/bin/python3
而後再修改.py文件爲可執行權限,再./文件執行python文件,如./a.py
便可執行,但前提是將python的安裝文件中的執行程序軟鏈接到/usr/bin/python3
目錄下。
Linux向windows互輸文件
xshll 與 xftp的傳輸,點擊圈的按鈕。