Linux命令(三)
echo:輸出信息
echo? ”abc”
echo “字符串” |passwd? --stdin? USERNAME?:利用管道修改用戶密碼
輸出重定向:>覆蓋輸出(會覆蓋原文件中的內容)
???????????>>追加輸出? (原有內容會被保留)
???????????Set –c :禁止已經存在文件使用覆蓋重定向,強制覆蓋輸出,則使用>|
???????????Set +c :關閉上述功能
???????????2> :重定向錯誤輸出
???????????2>> :追加重定向錯誤輸出,不會覆蓋
???????????&> :重定向標準輸出或錯誤輸出至同一個文件
輸入重定向:<
???????????<< :此處生成文檔
? ? ?Cat<< END :輸入信息,直至輸入END時結束。(EOF或者END代表輸入結束)
??????????? Cat >> /tmp/file.txt? <<END
grep:根據模式,搜索文本,并將符合模式的文本顯示出來
grep ?[options]?PATTERN? [FILE….]
? ? ? ?-i :忽略大小寫
? ? ? ? -v:顯示沒有被模式匹配到的行
? ? ? ? -o:只顯示被模式匹配到的字符串
? ? ? ? ? ? ? ? ? ? ? --color:加顏色顯示
locate:非實時,查找是根據全系統文件數據庫進行的,模糊匹配
? ? ? ? updatedb,手動生成文件數據庫,新安裝的系統沒有數據庫的,速度快
find:實時、精確、遍歷指定目錄的所有文件完成查找,速度慢、支持眾多查找標準
? ? ??查找標準
? ? ? ? ?格式:find?? 查找路徑---查找標準?? 查找到以后的處理動作
? ? ? ? ?查找路徑:默認為當前目錄
? ? ? ? ?查找標準:默認為指定路徑下的所有文件
? ? ? ? ?處理動作:默認為顯示
? ? ??匹配標準:
? ? ? ? ? -name? “FILENAME” :對文件名作精確匹配
??????????文件名通配:
????????????? *:任意長度的任意字符
????????????? ?:任意匹配當個字符
????????????? [ ]:匹配指定范圍內的任意單個字符
? ? ? ? ? -iname? “FILENAME”:文件名匹配時不區分大小寫
? ? ? ? ? -regex? PATTERN:基于正則表達式進行文件名匹配
? ? ? ? ? -user?? USERNAME:根據屬主查找
? ? ? ? ? -group? GROUPNAME:根據屬組查找
? ? ? ? ? -uid? UID:根據UID查找
? ? ? ? ? -gid? GID:根據GID查找
? ? ? ? ? -nouser :查找沒有屬主的文件
? ? ? ? ? -nogroup:查找沒有屬組的文件
? ? ? ? ? -type:根據文件類型來查找
????????????? f:普通文件
????????????? d:目錄文件
????????????? c:字符設備文件
????????????? b:塊設備文件
????????????? l:符號鏈接文件
????????????? p:命令管道文件
????????????? s:套接字文件
? ? ? ? ? -size[-/+]:指定文件大小
?????????????#k(默認)
????????????? #M
????????????? #G
? ? ??時間戳查找:
? ? ? ? ? -mtime:修改時間? (默認單位為天)
? ? ? ? ? -ctime:改變時間
? ? ? ? ? -atime:訪問時間
? ? ? ? ? ? ?支持[+/-]#:#號代表多少天數
? ? ? ? ? -amin:訪問時間? ?(默認單位為分鐘)
? ? ? ? ? -cmin:修改時間
? ? ? ? ? -tmin:改變時間
? ? ??文件的權限查找:
? ? ? ? ? -perm? MODE:精確查找
??????????????? /MODE:任意一位匹配即滿足條件
??????????????? -MODE:文件權限能完全包含此MODE時才顯示
? ? ??執行動作:
? ? ? ? ? -print:顯示(默認)
? ? ? ? ? -ls:類似ls –l 的形式顯示每一個文件的詳細信息
? ? ? ? ? -ok COMMAND { } \ ; :每一次操作都需要用戶確認執行命令,必須以\;結尾
? ? ?{}代表匹配到的文件
? ? ? ? ? ? ? ? ? ? ? ? ?-exec?COMMAND { } \ ; :不需要用戶確認執行命令,必須以\;結尾,{}代表匹配到的文件
Suid:運行某程序時,相應進程的屬主是程序自身的屬主;而不是啟動者屬主
? ? ? ??添加文件的suid:chmod? u+S? FIEL
? ? ? ??如果FILE本來原有就有執行權限,則suid顯示為s,否則為大S
Sgid:運行某程序時,相應進程的屬組是程序文件自身的屬組,而不是啟動者的基本組
? ? ? ??添加文件的sgid: chmod? g+s? FILE
? ? ? ? ? ? ? ? ? ? ? ? ?Chmod? g-s ?FILE
Sticky:規定在一個公共目錄,每個人都可以創建文件、刪除自己的文件,但不能刪除別人的文件
??????? Chmodo+t? DIR?:對目錄增加sticky權限
??????? Chmodo-t? DIR?:去掉目錄的sticky權限
??????? Chmod1755? /tmp/tset?? 表示文件具有sticky權限
facl:利用文件擴展保存額外的訪問控制權限
? ? ? ?setfacl:設置某文件的控制權限
???????? -m:設定、增加facl
???????? -x:取消facl
????????? g:設置組
????? ?例:setfacl? -m? u:UID:rw?file
? ? ? ? ? ? ? ?getfacl:查看文件的facl權限
? ? ? ?owner----->group----->other(默認權限應用次序)
? ? ? ? ? ? ? ?owner----->facl,user----->group----->facl,group----->other(應用facl之后權限應用次序)
whoami:顯示當前用戶是誰,su半切換的時候顯示的是切換之前的那個用戶
who:查看當前登錄系統的用戶以及其他所登錄終端
? ?-r:顯示當前運行級別
? ?-H:第一回列表顯示各列名稱
? ? w:顯示who更詳細的信息
last:顯示當前系統上的登錄日志(/var/log/wtmp文件),包括系統用戶和重啟信息
? ?-n 數字:只顯示最近幾次的登錄信息
lastb:顯示/var/log/btmp文件,顯示用戶錯誤的登錄嘗試
? ?-n 數字:顯示最近幾次的登錄信息
lastlog:顯示每一個用戶最近一次的成功登錄信息
? ?-u USERNAME :顯示特定用戶的登錄信息
basename:顯示一個目錄的基名
? ? ? ?basename?/etc/abc/my? 直接顯示my
? ? $0:執行腳本時的腳本路徑及名稱
? ? Basename $0:直接調用腳本本身路徑及名稱
mail:郵件查看,可以查看郵件,查看以后就會放到用戶的家目錄內的mbox文件夾內
? ? -s:主題
? ? mail –s? “hello wordl ” root
? ? cat /etc/fast |mail? -s “hello wordl ” root
hostname:顯示當前主機的名稱
? ? ? ? ? ? ? ? ? hostname主機名:更改主機名
ln:創建鏈接文件
? ? ? ?ln? SRC?DEST:創建硬鏈接
? ? ? ?-s:創建軟鏈接
? ? ? ?-i:顯示文件的inode號
? ? ? ?-v:顯示執行結果
?? 硬件鏈接:
? ? ? ? 1、? 只能對文件創建,不能應用于目錄
? ? ? ? 2、? 不能跨文件系統
? ? ? ? 3、? 創建硬鏈接會增加文件被鏈接的次數
?? 符號鏈接:
? ? ? ? 1、? 可用于目錄
? ? ? ? 2、? 可以跨文件系統
? ? ? ? 3、? 不會增加被鏈接文件的鏈接次數
? ? ? ? 4、? 某大小為指定的路徑所包含的字符個數
du:顯示目錄下的所有文件的大小
? ? ? ?-s:顯示目錄大小
? ? ? ?-sh:單位換算后顯示
df:顯示整個磁盤分區的使用情況
? ? -h:顯示空間大小
fdisk:磁盤分區
????fdisk? /dev/sda
? ? ? ? p:顯示當前硬件的分區,包括沒保存的改動
? ? ? ? n:創建新分區
? ? ? ? d:刪除一個分區
? ? ? ? w:保存退出
? ? ? ? q:不保存退出
? ? ? ? t:修改分區類型
? ? ? ? l:顯示所有支持的分區類型
partprobe:通知內核重讀分區表,也可加路徑重讀指定分區(Redhat)
partx:重讀分區表(centos)
mkfs:創建文件系統
? ? ? ?mkfs? -t? FSTYPE?指定分區
? ? ? ?-t可以實現多種系統的格式化? 例:mkfs –t? ext2?/dev/sda2
mke2fs:專門管理ext系列的文件的命令,不跟任何參數,默認創建我ext2
? ? ? ? -j:創建ext3類型的文件系統
? ? ? ? -b:BLOCK_SIZE:指定塊大小,默認為4096;可取值為1024、2048、4096
? ? ? ? -L ?LABEL:指定分區卷標;例? mke2fs?-L? MMYY? /etc/sdb2
? ? ? ? -m#:指定預留給超級用戶的塊數百分比
? ? ? ? -i#:用于指定為多少字節的空間創建一個inode,默認為8192;數值應為2^n倍
? ? ? ? -N#:指定inode個數
? ? ? ? -F:強制創建文件系統
? ? ? ? -E:用于指定額外文件系統屬性
blkid:查看磁盤設備的相關屬性,其中有包含文件系統的信息
e2label:用于查看或定義卷標
? ? ? ? e2label?? /etc/sda2?? :查看卷標
? ? ? ? e2label?? 設備文件? 卷標? :設定卷標
tune2fs:調整文件系統的相關屬性
? ? ? ? -j:不損害原有數據,將ext2升級ext3
? ? ? ? -L:設定或修改卷標
? ? ? ? -m#:調整預留百分比
? ? ? ? -r#:指定預留塊數
? ? ? ? -o:設定默認掛載選項
? ? ? ? -c#:指定掛載次數達到#次之后進行自檢,0或-1表示關閉此功能
? ? ? ? -i#:每掛載使用多少天后進行自檢;0或-1表示關閉此功能
? ? ? ? -j:顯示超級塊中的信息
dmpe2fs:顯示文件系統中超級塊信息或文件的屬性信息
? ? ? ? -h:只顯示超級塊信息
fsck:檢查并修復Linux文件系統
? ? ? ? -t TYPE:指定文件系統類型
? ? ? ? -a:自動修復
e2fsck:專門用來檢查修復ext2或ext3的命令
? ? ? ? -a或-p:自動修復
? ? ? ? -f:強行修復
mount:掛載文件系統
? ? ? ?mount? 設備?? 掛載點
? ? ? ? ??設備:
?????????????? 設備文件:/dev/*
?????????????? 卷標:LABLE=” ”
?????????????? UUID:UUID=” ”
? ? ? ? ??掛載點:目錄
? ? ? ? ? ? ? ?1、? 此目錄沒有被其他進程使用
? ? ? ? ? ? ? ?2、? 目錄存在
? ?3、目錄中原有的文件將會被暫時隱藏
??????mount? [options] [-o options] DEVICE? MOUNT_POINT
? ? ? ? ? -a:表示掛載/etc/fstab文件中定義的所有文件系統
? ? ? ? ??-n:默認情況下,mount命令每掛載一個設備,都會把掛載的設備信息保存至/etc/mtab文 ? ? ? ? ? ? ? ? 件;使用-n選項意味著掛載設備時,不把信息寫入此文件
? ? ? ? ??-tFSTYPE:指定正在掛載設備上的文件系統類型;不使用此選項時,mount會調用blkid命令 ? ? ? ? ? ? ? ? ? ? 獲取對應文件系統的類型
? ? ? ? ? -r:只讀掛載
? ? ? ? ??-w:讀寫掛載
? ? ? ? ? -o:指定額外的掛載選項,也指定文件系統啟用的屬性
? ? ? ? ??async:表示異步寫入
? ? ? ? ??atime:表示更新時間戳
? ? ? ? ??noatime:關閉更新時間
? ? ? ? ??auto:表示這個磁盤設備能被使用-a選項自動掛載
? ? ? ? ? remount:重新掛載當前系統
? ? ? ? ? dev:允許其他磁盤設備
? ? ? ? ??ower:允許普通用戶掛載
? ? ? ? ??sync:同步啟用
? ? ? ? ??loop:掛載本地回環設備
umount:卸載某文件系統
? ? ??umount 設備
? ? ? umount? 掛載點
? ? ? (卸載時指定上面其中一個即可,注意:掛載的設備沒有進程使用)
free:查看系統上的物理內存和交換內存的使用情況,默認單位字節
? ? ? ? ?-m:以M為單位
? ? ? ? ?Biffers是緩沖;cached是緩存:目的是重復使用,避免過慢的設備
mkswap:創建交換分區
? ? ??swapon? /dev/sb*:啟用交換分區
? ? ? ? ?-a:表示啟用/dev/fstab內所有交換設備
? ? ??Swapoff? /dev/*:關閉交換分區
dd:轉換和復制文件,復制的是最底層的數據流
? ? ??if:數據來源
? ? ??of:數據存儲目標
? ? ??bs:數據單位大小
? ? ??count:數量
? ? ??seek=#:復制,創建數據文件時,跳過的空間大小
? ? ? 例:ddif=/dev/zero? of=/tmp/somefile? bs=2M count=2048
? ? ??這個命令能創造出一個大小為2G的鏡像文件,而這個鏡像文件能夠直接mkswap并啟動起來是可以
? ?/dev/zero是泡泡設備,可以一直向外吐零
fuser:驗證進行正在使用的文件或套接字
? ?-v:查看某文件正在運行的進程
? ?-k:把正在訪問的進程kill
? ? ? ? ? ? ? ? ? -km:把掛載點上的進程都關閉掉
轉載于:https://blog.51cto.com/wangkanglinux/1686422
總結
以上是生活随笔為你收集整理的Linux命令(三)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【转】eclipse技巧1
- 下一篇: Linux——curl(转)