1. 程式人生 > >Linux原來這麼簡單(詳解)

Linux原來這麼簡單(詳解)

ls ls -a 列出當前目錄下的所有檔案,包括以.頭的隱含檔案 ls ls -l 或 ll 列出當前目錄下檔案的詳細資訊 ls ls -a 顯示所有檔案,包含隱藏。 ls ls -al 顯示所有檔案的詳細資訊。 pwd pwd 檢視當前所在目錄的絕對路經 cd cd … 回當前目錄的上一級目錄 cd cd - 回上一次所在的目錄 cd cd -p aa/bb/cc 直接建立多級子目錄 cd cd ~ 或 cd 回當前使用者的宿主目錄 cd cd ~使用者名稱 回指定使用者的宿主目錄 mkdir mkdir 目錄名 建立一個目錄 mkdir mkdir –p 遞迴式去建立一些巢狀目錄 rmdir Rmdir 空目錄名 刪除一個空目錄 建立檔案 touch touch 1.txt 建立檔案1.txt 刪除操作 rm rm 檔名 檔名 刪除一個檔案或多個檔案 rm rm -rf 非空目錄名 遞迴刪除一個非空目錄下的一切,加-f不提示 檢視檔案 cat cat 檔名 一屏檢視檔案內容 cat cat 路徑/檔名 |grep 字串 在檔案中匹配“字串” more more 檔名 分頁檢視檔案內容 less less 檔名 可控分頁檢視檔案內容 grep grep字元 檔名 根據字元匹配來檢視檔案部分內容 find find 路經 -name “字串” 查詢路經所在範圍內滿足字串匹配的檔案和目錄 file file 檔名 檢視檔案型別 head head -數字 檔名 可以檢視前n行,不加引數,預設為10. taill taill -數字 檔名 可以檢視後n行,不加引數,預設為10. 檢視幫助 help cp 檢視內部命令cp ls --help |less 檢視外部命令,分屏顯示 man cd 檢視cd幫助 不分內部與外部命令 info ls 檢視 ls 資訊 複製檔案 cp cp /路經/檔案? ./ 移動絕對路經下的檔案到當前目錄下 cp /dev/cdrom linux4.iso 在字元介面上製作ISO映象檔案 移動檔案 mv mv 路經/檔案? /經/檔案 移動相對路經下的檔案到絕對路經下 mv mv 檔名 新名稱 在當前目錄下改名 mv mv a.txt b.txt 更改檔名 mv mv 檔名 路徑 移動檔案 mv mv 路徑/檔名 路徑/檔名 移動並更改檔名 系統管理 date date 月日時分年 更改計算機系統時間 文字編輯 gedit gedit 檔名 在圖形介面下啟動編輯器 vi模式間的切換 vi vi tab切換命令與編輯模式 開啟vi編輯器 :q退出編輯環境 vi a 從命令進入輸入模式 按ESC從輸入模式進入命令模式。 讀取檔案 :e 新檔名 一個檔案完成後,開啟新的檔案。 :e! 新檔名 強制關閉當前檔案(不儲存)並開啟新檔案 :f 檔名 讀取指定檔案,並貼上到游標所在行下 :w 儲存已經命名的檔案 :w 檔名 儲存未命名的檔案 :w 檔名 另存為檔名 :q 退出:q編輯器 :wq 儲存並退出 :q! 不儲存退出 h 游標左移 l 游標右移 k 游標上移 j 游標下移 文字編輯 快速切換 快捷鍵ctrl+F 前翻整頁 快捷鍵ctrl+B 後翻整頁 快捷鍵ctrl+U 前翻半頁 快捷鍵ctrl+D 後翻半頁 :set nu 在編輯器中顯示行號 :200 直接進入到第200行 ? 進入最後一行 文字編輯 進入輸入模式 i 在當前游標處進入插入狀態 a 在當前游標後進入插入狀態 A 將游標移動到當前行的行末,並進入插入狀態 o 在當前行的下面插入新行,並進入插入狀態 O 在當前行的上面插入新行,並進入插入狀態 文字編輯 刪除操作 cw 刪除當前游標所在單詞尾部的字元,並進入插入狀態 c$ 刪除當前游標到行尾的字元,並進入插入狀態 c^ 刪除游標之前到行首的字元,並進入插入狀態 3x 刪除當前游標處向右的3個字元 3dd 刪除當前行開始向下刪除3行 3dw 刪除當前游標向右的3個單詞 3de 刪除當前游標向右的3個單詞,保留右面的空格 d$ 刪除當前字元到行尾的所有字元 d^ 刪除當前字元到行首的所有字元 J 刪除游標所在行尾的換行符 撤銷操作 u 取消最近的一次操作,並恢復操作結果 U 取消當前行進行的所有操作 快捷鍵Ctrl+R 撤銷命令u的取消操作 文字編輯 複製操作 4yy 複製當前行及後續共4行的文字內容到vi緩衝區 7yw 複製當前游標開始的7個單詞到vi緩衝區 y$ 複製當前游標到行尾的內容到vi緩衝區 y^ 複製當前游標到行首的內容到vi緩衝區 :28,48y 複製第28行到48行的內容到vi緩衝區 貼上操作 p 貼上緩衝區內容到當前游標處,不覆蓋檔案已有內容 文字編輯 查詢操作 /字串 從當前游標處開始向下查詢指定字串 n下 N上 ?字串 從當前游標處開始向上查詢指定字串 n下 N上 文字編輯 命令模式 替換操作 ?/old/new 在當前查詢old替換成new.只替換當前行中第一個 ?/old/new/g 替換行中所有“old”字串為“new” :3,9s/old/new/g 替換3-9行內所有“old”字串為“new” :%s/old/new/g 替換全文中所有“old”字串為“new” 末尾加上引數c可強制每個替換都需要使用者進行確認。 /new/c /gc (y、n、a、q) 文字編輯 同時啟動多個檔案 vi a.txt b.txt c.txt 同時啟動a.txt b.txt c.txt vi -o a.txt b.txt c.txt 水平顯示各個檔案 vi -O a.txt b.txt c.txt 垂直顯示各個檔案 文字編輯 檔案之間 切換操作 :args 檢視vi編輯器中多檔案的狀態(顯示檔案資訊) :next 多檔案中向後切換 :prev 多檔案中前後切換 :first 切換到多檔案的首檔案 :last 切換到多檔案的尾檔案 快捷鍵ctrl+^ 切換到切換之前的檔案 掛載光碟 mount /dev/cdrom /media/cdrom 掛載光碟到/media/cdrom umount /media/cdrom 解除安裝光碟,同umount -t iso9660 /media/cdrom 掛載U盤 mount -t vfat /dev/sdb1 /media/cdrom 掛載U盤 umount /media/cdrom 解除安裝U盤 建立使用者及管理 useradd Useradd 使用者名稱 建立一個新的使用者 chfn chfn 使用者名稱 輸入使用者資訊 建立使用者及管理 useradd useradd -u 666 使用者名稱 建立一個ID號為666的新使用者 useradd useradd -e 12/22/2009 使用者名稱 建立一個2009/11/22日過期的使用者 useradd useradd -p 密碼 使用者名稱 建立使用者,並一同建立密碼 useradd useradd -g 組名 使用者名稱 建立使用者並加入組(原組不存在,改加入新組) useradd useradd -G 組名 使用者名稱 建立使用者並加入組(原組存在,並加入新組) 使用者相關修改 usermod usermod -l 新名 舊名 給使用者改名 usermod usermod -e 11/23/2009 更改使用者過期時間為2009/11/23 usermod usermod -L 使用者名稱 禁用使用者 usermod usermod -U 使用者名稱 解鎖使用者 userdel userdel 使用者名稱 刪除使用者,但不刪除使用者自家目錄。 userdel userdel -r 使用者名稱 刪除使用者,並刪除使用者自家目錄。 groupadd Groupadd 組名 建立一個新的組 passwd passwd 為root使用者建立密碼(修改) passwd Passwd 使用者名稱 為使用者建立密碼 passwd Passwd -d 使用者名稱 刪除使用者密碼也能登陸 passwd Passwd -l 使用者名稱 鎖定賬號密碼 passwd Passwd -u 使用者名稱 解鎖賬號密碼 passwd Passwd -S 使用者名稱 查詢賬號密碼 組相關修改 Groups groups 使用者名稱 檢視使用者所屬組 Groupadd groupadd 使用者名稱 建立新使用者 Groupdel groupdel組名??先應刪它的使用者 刪除組 Groupmod groupmod –n新使用者名稱 老使用者名稱 為組改名 Groupmod groupmod –g 501 組名 改變組GID gpsswd gpasswd -d 使用者名稱 組名 把使用者從組中刪除 gpsswd gpasswd -a 使用者名稱 組名 增加使用者到組 使用者管理 Id id 使用者名稱 查使用者資訊 使用者管理 ll ll 檔名 檢視檔案許可權 檔案許可權及所屬的修改 chmod chmod u+r 增加使用者讀許可權 chmod chmod a+w 增加所有人寫許可權 chmod chmod g+x 增加組執行許可權 chmod chmod 755 檔名 更改檔案許可權為rwx-xr-x (r=4 w=2 x=1)值相加 chown chown 使用者名稱 檔名 更改檔案所屬使用者 chown chown :組名 檔名 更改檔案所屬組 chown chown 使用者名稱:組名 檔名 同時更改使用者名稱和組名 chown chown -R 使用者名稱:組名 目錄名 更改目錄及其中所有檔案所屬組及 使用者切換 快捷鍵Alt+F2 切換到使用者F2 (F1 - F6) su su - 使用者名稱 用於終端上使用者的切換 cat cat /etc/shells 顯示系統支援的shell shell echo echo $SHELL 檢視當前系統所使用的shell echo echo $變數 應用變數 定義命令別名 alias alias 檢視定義好的命令別名 alias alias la=“ls -a” 臨時定義命令別名 變數的設定 chsh chsh 使用者名稱 再輸入/bin/csh 更改預設sehll,且永久不變。 set set |less 檢視系統變數 PS1 PS1=hello; 更改[

[email protected] ~]為hello; 變數名=值 MOVIE=“life is beautiful” 自設變數 unset unset 變數名 刪除變數 /bin/bash 進入子shell exit 退出子shell export export 變數名 刪除變數 readonly readonly 檢視系統中只讀變數 readonly readonly 變數名 設定變數為只讀變數 sh sh 檔名 執行無執行許可權的指令碼 歷史命令 history history |less 顯示命令歷史記錄 ! !39 直接使用第39次命令 ! !c 引用最後一次以c開頭的命令。 重定向

ls > 檔名 把ls得結果重定向到指定檔案 cat a.txt > b.txt 將a.txt中的檔案複製到b.txt(覆蓋)

cat c.txt >> b.txt 將c.txt中的檔案追加到b.txt中 echo “字串” >> a.txt 將“字串”追加到a.txt檔案中 2> 命令 2> 檔名 將錯誤重定向檔案中 RPM包管理 rpm rpm -qa 顯示系統所裝所有的rmp軟體包 rpm rpm -ivh 安裝顯示詳細資訊 rpm rpm -ql rmp包名 查詢系統中指定軟體包所包括的檔案列表 rpm rpm -qpl rmp包名 查詢未裝包位置 rpm rpm -qi rmp包名 顯示軟體包的詳細資訊 rpm rpm -qpi rmp包名 資訊列表 rpm rpm -Uvh rmp包名 升級包,可安裝 rpm rpm -e rmp包名 解除安裝 rpm rpm -e --nodeps rmp包名 強制解除安裝 rpm rpm -qf /bin/ls 查詢“/bin/ls”檔案所在包 設定ip netconfig netconfig 設定IP地址 service network restart 重啟網路服務 tar包管理 gzip gzip 檔名 壓縮檔案,原檔案消失 tar tar cvf 包名 原檔名、原包名 把檔案和目錄壓縮成tar包 tar tar tf 包名 檢視tar包中的檔案 tar tar xvf 包名 釋放tar包裡的檔案 引數-v為顯示詳細引數 tar tar xvf 包名 -C 路徑 釋放到指定目錄 tar tar jxvf 包名 釋放bz2格式壓縮包 tar tar zcvf 包名 檔名、原包名 建立壓縮tar包 tar tar ztf 包名 檢視壓縮tar包 tar tar zxvf 包名 -C 路徑 釋放tar包到指定路徑 編譯安裝 安裝 ./configure 安裝在程式目錄下 ./configure --prefix=/路徑 安裝在指定目錄 make 編譯原始碼 make install 將已編譯的應用程式安裝到目標路徑 解除安裝 ./unin stall 解除安裝 字元下載 wget wget 下載地址 字元介面下的下載 安裝程式的啟動 proz proz 下載路徑 安裝在預設路徑下的proz的啟動 下載 路徑/proz 路徑/proz 下載路徑 安裝在指定路徑下的proz的啟動 下載 gcc升級 yum gcc yum gcc 自動升級gcc 打補丁 cat cat 路徑 |patch -p1 給程式打補丁 關機 shutdown shutdown -h 關機 快捷鍵ctrl+alt+del 關機 init init 0 關機 init的七種模式 init init 1 單使用者模式 init init 2 無NFS,字元多使用者 init init 3 多使用者 init init 4 預留 init init 5 圖形使用者 重啟 init init 6 重啟 shutdown shutdown -r 重啟 reboot reboot 重啟 級別查詢修改 runlevel runlevel 查詢當前級別 vi /etc/inittab 修改預設啟動級別 啟動級別 第十八行,id:4 把預設啟動級別改為3 第32行,在ca::前加上# 32 #ca:: 把快捷鍵ctrl+alt+del關機 禁用 chkconfig chkconfig --list 檢視安裝包在各級的啟動狀態 chkconfig chkconfig --level 24 httpd on 啟動httpd在 24級別。 chkconfig --list rsyns 啟動非獨立的包,不寫啟動級別 系統程序 pstree patree |less 顯示程序樹 ps ps aux 顯示程序 kill kill 程序號 關閉程序 kill kill -q 程序號 強制結束 top top 動態檢視程序 快捷鍵ctrl+z 命令後加 & 放入後臺執行 jobs jobs 檢視後臺執行項 fg fg 2 把後臺執行的程式調入前臺 任務計劃的編輯 at at 18:33 為18:33分製作任務計劃 at > at >mkdir 目錄名 直接輸入命令 快捷鍵ctrl+d 結束當前程序 atq atq 計劃任務佇列 atrm at -d 都為取消計劃任務 at -t 12011230 為12月1月12:30任務計劃 rpm rpm -qa |grep vixie -cron 檢視計劃任務工具包是否安裝 crontab 開啟編輯任務計劃編輯器 格式:分鐘 小時 天 月 星期 後加命令 crontab crontab -e 修改任務計劃 mail mail 接受系統郵件 service crond start 啟動crond crontab crontab -r 刪除全部計劃任務 磁碟分割槽 fdisk fdisk /dev/sdb 開啟磁碟分割槽工具 n 新建分割槽 w儲存推出 d刪除分割槽 q不儲存推出 磁碟格式化 mkfs.ext3 mkfs.ext3 /dev/sdb1 格式化成ext3格式 mkswap mkswap /dev/sdb2 格式化成swap格式 mkfs.vfat mkfs.vfat /dev/sdb3 格式化成fat格式 parted parted /dev/sdb 檢視分割槽sdb的型別 磁碟掛載 vi vi /etc/fstab 掛載磁碟 磁碟配額 quotacheck quotacheck -cug /media/sdb1 啟動磁碟配額 quotaon quotaon /media/sdb eduota eduota -u 使用者名稱 給使用者做磁碟配額 quota quota -u 使用者名稱 檢視使用者磁碟使用情況 edquota eduota -t 更改軟限制時間 edquota eduota -g 組名 更改組使用者磁碟配額 edquota eduota -p 已陪使用者名稱 使用者名稱n 為多個使用者建立磁碟配額 IP資訊編輯 route rout 檢視預設閘道器 cat /etc/sysconfig/network-scripta/ 檢視ip資訊檔案 用vi可修改 ifconfig eth0 192.168.1.1 netmask 255.255.255.0 設定臨時IP netconfig netconfig 設定IP地址 需重啟網絡卡服務 routeadd routeadd default gw 閘道器 設定臨時 閘道器 routedel routedel default gw 閘道器 刪除臨時閘道器 traceroute traceroute IP地址 路由追蹤 ifdown ifdown 網路介面名稱 禁用網絡卡 ifup ifup 網路介面名稱 啟用網絡卡 主機名更改 hostname hostname 計算機名 更改計算機名,重啟無效 vi /etc/sysconfig/network 更改計算機名 主機名設定後重啟才能生效,一般和hostname一起使用。 域名解析 nslookup >網址或域名 域名解析 安裝NFS伺服器 vi vi /etc/hosts //新增IP地址與主機名(本地主機名稱解析檔案) vi vi /etc/resolv.conf resolv.conf中的search用於設定主機的預設查詢域名 rmp rmp -q nfs-utils portmap 查詢NFS伺服器是否安裝 rmp -ivh nfs-utils-1.0.6-46.i386.rmp portmp-4.0-63.i386.rmp 安裝NFS showmount的查詢功能 showmount showmount NFS伺服器主機地址 顯示當前主機中NFS伺服器連線資訊 showmount showmount -e IP地址 顯示指定主機中NFS伺服器連線資訊,並列表 showmount showmount -d NFS伺服器地址 顯示指定主機中NFS伺服器已被掛載的目錄 showmount showmount -a NFS伺服器地址 顯示掛載的共享列表和NFS客戶機地址 NFS的共享輸入與輸出 exportfs export -rv 使修改後的export -rv檔案生效 exportfs export -auv 臨時停止NFS伺服器的所有共享目錄輸出 exportfs export -av 輸出(啟用)所有被-auv命令停止的NFS共享目錄 system-config-nfs 在影象介面下啟動NFS伺服器配置工具命令 配置NFS 伺服器 必須安裝的 軟體包 rpm -qa |grep nfs-utils 均在第二張光碟中 rpm -qa |grep portmap 配置exports 檔案 vi /etc/exports 下面兩行為格式 /opt/text *(sync,ro) 192.168.1.12(sync,rw) 共享原始檔路徑 所有主機(同步寫磁碟,只讀) 客戶IP地址(同步寫磁碟,讀寫) ping通NFS伺服器與客戶機 以上均在NFS伺服器上完成 下面在客戶機上完成 配置NFS 客戶端 showmount -e /192.168.1.1 檢視NFS伺服器共享目錄 掛載共享目錄 mount 192.168.1.1:/opt/test /mnt 配置自動掛載 vi /etc/fstab 以下兩行為格式 192.168.1.1:/opt/text /mnt nfs defaults 0 0 伺服器ip地址:共享原始檔路徑 掛載點路徑 磁碟格式 預設掛載 存檔 windows系統的 NFS 掛載 windows中需安裝liteall.exe軟體 cat /etc/passwd |grep nfsnobody 查詢UID GID 使用UID GID 掛載 重啟可解決相容性問題 補充 wall wall hello everyone 在所有登陸使用者桌面顯示 wall wall < a.txt 將a.txt中的內容顯示到所有登陸使用者的桌面 wc wc 統計從鍵盤輸入的 行數 單詞數 字元數 wc wc < /etc/passwd 統計使用者數(行) ls ls a.txt &> b.txt 將命令執行的輸出和錯誤輸出到指定的檔案中