LINUX操作系統
文件系統操作:
- 在複製文件的時候,cp -r wenjian1 wenjian2
將文件1複製到文件2中,當文件2起初不存在時,會把文件1 中的內容複製到文件2,並創建文件2;當文件2 起初就存在時,會將文件1這整個文件夾複製到文件2中!
- touch 文件 創建一個空文件
- cp和rm不爲空的文件夾時要-r遍歷,但是mv移動的時候就不需要-r遍歷就可以把真個文件夾移動進去!
- rm在移除不爲空的文件時,需要-r遍歷,若要取消提示,加-f,即rm -rf 文件夾
- find 文件(不爲空) 會系統地從父文件夾到最終的子文件依次羅列;可以使用正則表達式精確查找,find /etc -name pro* 查找etc目錄下以pro開頭的文件或者文件夾。
- head -20 wenjianming 表示文件只從頭開始前20行開始打印顯示;tail -20 wenjianming 表示文件只從尾部開始後20行開始打印顯示。
- more wenjian 每次只會顯示一個屏幕所能承載的文件內容,底部顯示顯示出的文件佔整個文件的比例。Space快捷鍵顯示下一個屏幕的內容,B顯示上一個屏幕內容,enter顯示下一行內容,Q退出。
文件傳輸-----------------------------------------------
- 上傳(先下載 yum insatll lrzsz -y),使用命令rz完成上傳功能
- 下載(下載文件,不是文件夾),sz file 將文件下載至windows系統中。
- df 查看磁盤信息(後面-k -m -h)
- du 查看文件或者目錄的大小,默認值爲kb,(-m -k -a(表示當前目錄下的所有文件和文件夾))
- Ifconfig 查看網絡配置信息(Inet addr:192.168.195.222 linux系統所在的本機地址;Bcast:192.168.195.225廣播地址;MASK:255.255.255.0子網掩碼)
- netstat:顯示各種網絡相關信息 屬性(-a顯示所有信息;-t顯示tcp相關信息;-u顯示udp相關信息)
lsof -i:22({----------------查看當前端口的運行情況
COMMAND:進程的名稱
PID:進程標識符
USER:進程所有者
FD:文件描述符,應用程序通過文件描述符識別該文件。如cwd、t xt等
TYPE:文件類型,如DIR、REG等
DEVICE:指定磁盤的名稱
SIZE:文件的大小
NODE:索引節點(文件在磁盤上的標識)
NAME:打開文件的確切名稱
})
- telnet 測試本機能否遠程連接遠程主機的端口(安裝telnet) telnet 遠程主機ip 遠程端口
- curl -X GET url 請求模擬 模擬http的get請求 訪問url地址
系統管理--------------------------------
切換用戶:su 用戶名
- adduser username 創建用戶(創建用戶的時候會默認的將用戶添加到一個名字與用戶名稱相同的組中) passwd username 設置用戶的密碼
- usermod -l newname oldname 修改用戶名(在root權限下修改其它普通用戶,並且該用戶不再登錄狀態)
- Usermod -L username 鎖定用戶(在root權限下鎖定其它普通用戶,並且該用戶不再登錄狀態)
- Usermod -U username 解鎖用戶(在root權限下解鎖其它普通用戶,並且該用戶不再登錄狀態)
- whoami 我是誰 即查看當前登錄的用戶名
- 普通用戶可以查看/etc/passwd文件來查看當前系統的所有用戶;root用戶查看/etc/shadow查看系統所有用戶。
- userdel -r username 刪除用戶(在root權限下刪除其它普通用戶,並且該用戶不再登錄狀態)
- groupadd groupname 創建用戶組;groupdel groupname 刪除用戶組;groupmod -n newname oldname 修改用戶組的名字;groups 查看當前登錄用戶所在組中的組成員
- usermod -g 組名 用戶名 將用戶所在的主組改爲其他組; usermod -G 組名 用戶名 將用戶名添加到附加組中(即一個用戶名可以有多個組,一個附加組中可以有好多個用戶,利用cat /etc/group來查看附加組中的用戶)
系統權限----------------------
- ll /目錄 查看目錄下的所有文件和目錄
ll命令中顯示的內容如下:
標識 相關權限 用戶 用戶組 大小 時間 文件名
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
這 10 個字符確定不同用戶能對文件幹什麼
第一個字符代表文件(-)、目錄(d),鏈接(l).
- 其餘字符每 3 個一組(rwx) : 讀(r)、寫(w)、執行(x)
- 第一組 rwx:文件所有者的權限是 r 讀、w 寫和 x 執行
- 第二組 rw-:與文件所有者同一組的用戶的權限是讀、寫但不能執行
- 第三組 r--:不與文件所有者同組的其他用戶的權限是讀不能寫和執行也可用數字表示爲:r=4,w=2,x=1 因此 rwx=4+2+1=7
- 1 表示連接的文件數
- root 表示用戶
- root 表示用戶所在的組
- 1213 表示文件大小(字節)
- Feb 2 09:39 表示最後修改日期
- abc 表示文件名
- chown username 文件/目錄 將文件或者目錄修改擁有人; chown username:usergroup 文件/目錄 同時修改文件或目錄的所有者以及所在的組; chown -R username 目錄 表示將整個目錄遍歷修改所有者,即裏面的文件也會被一起修改所有者。
- UGO模型(U:user,即文件的所有者/所在用戶;G:group,即文件所在組;O:other,即不屬於上面兩者的就屬於other)
- chmod (ugo中的任意一個或幾個)+/-rwx filename 表示將用戶、用戶所在組中的其它用戶、其它用戶對這個文件進行讀寫執行的權限修改。也可以用chmod (4/2/1) filename表示文件對應的權限,(用戶)(用戶所在組的其它用戶)(其它用戶)
- cat /etc/shadow(管理員)以及cat /etc/passwd(普通用戶)--------查看系統中所有用戶。cat /etc/group------查看附加組中的用戶(必須添加到附加組中,主組中的用戶不顯示)
- sudo 權限配置------vim /etc/sudoers
被授權用戶 ALL=(配置什麼用戶或用戶組的權限) 需要配置的命令
*如果想把權限授權一個組,在組名前面加上%即可,格式和用戶權限設置一致;在被授權用戶使用這些配置的命令時,先輸入sudo來進行用戶密碼驗證才能使用要使用的命令。如果不想要密碼驗證,就可以在配置的時候加上NOPASSWD: 如下所示:
系統時間-----------------------------------
- cal 查看日曆 date 查看當前時間的信息
- 同步當前linux系統的時間,需要先下載ntpdate,再利用命令行:
ntpdate cn.ntp.org.cn來進行同步時間服務器cn.ntp.org.cn的時間。
重定向和管道---------------------------------
輸出重定向:
- > 前面的輸出內容覆蓋到後面文件的內容,前面的輸出不打印,可以通過查看後面被覆蓋的文件來查看前面的輸出內容
- >> 前面的輸出內容追加到後面文件的內容,前面的輸出不打印,可以通過查看後面被追加的文件來查看前面的輸出內容
- echo “要輸入的內容” 相當於eclipse中的syso(system.out.println(“要輸入的內容”))
輸入重定向:
- < 將後面文件的內容作爲前面命令的輸入
例如: cat < myfile-------------將myfile文件的內容作爲cat的輸入,即查看打印出了myfile中的內容。
標準輸出重定向-----------------------------------
- 1>(相當於>) 即前面的命令是有效的、正確的纔會把輸出的內容覆蓋到後面的文件中。
- 2> 即前面的命令是錯誤的或者無效的纔會把輸出的內容覆蓋到後面的文件中。 例如:cat nnn 2> myfile(前面的cat nnn肯定是錯誤的,因爲沒有事先創建nnn文件,會報錯cat: nnn: No such file or directory,這時會把這個錯誤的信息也就是輸出的內容覆蓋到myfile文件中,不妨打印myfile文件試試,裏面的內容就是cat: nnn: No such file or directory)
- 結合使用符號 2>&1 即無論前面的是錯誤的還是正確的都會將前面的輸出覆蓋到後面的文件中。
- 以上全部是>覆蓋重定向,同理可以使用>> 追加重定向。
管道------------------------------
- 管道符“|” 即前面的輸出作爲後面的輸入
例如常用的一個命令:netstat -anp | grep 22(前面netstat -anp輸出的是網絡相關的信息,後面搜索22號端口------------即搜索22號端口的相關信息)
- 命令執行控制語句----------&&-------------前面執行成功纔會執行後面的(前面不成功會直接報錯);--------------||-----------------前面執行失敗纔會執行後面的(前面執行失敗會直接執行後面的命令)
信息黑洞 /dev/null----------------------所有的東西可以往信息黑洞中扔並且不會顯示,扔進去在裏面就被丟失,所以不佔內存。例如:cat myfile > /dev/null
ll > /dev/null等。