歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

shell編程學習:shell基礎和文件

1shell就是用戶和內核進行交互操作的一種接口,

2shell可以運行的命令包括linux命令,內置命令,實用程序,用戶程序,shell腳本

3shell元字符:

4.獲取命令幫助:man,info.--help

5.文件類型有普通文件(-),目錄(d),符號鏈接文件(l),字符設備文件(c),塊設備文件(b),套接字(s),命名管道(p),塊設備文件就是計算機外圍設備文件,讓用戶可以操作設備的時候和操作普通文件一樣。

6,常用文件和目錄操作命令:

ls ,ls -al,ls -R遞歸列出所有子目錄,-c,-t,-u根據文件的時間排序,

tree,顯示文件和目錄樹,tree -d不顯示文件,只顯示目錄, -L n只顯示幾層的目錄

pwd    顯示當前所在的目錄

cd切換目錄

mkdir創建目錄

rmdir    刪除空目錄

touch    生成空文件或者更改現在文件的時間戳。-a更改訪問時間,-m更改修改時間,

cp復制文件或目錄,-d復制符號鏈接文件的時候更正指向地址,-f強制復制,-i復制的時候要確認,-p保留文件屬性,-R,-r遞歸復制所有,

mv移動文件或者目錄,-f強制復制,

rm刪除文件或者目錄,-f掠過不存在的文件,-r,-R遞歸刪除所有子目錄文件

ln,創建鏈接文件

symlinks,檢查目錄中的符號鏈接,並顯示類型

7.文件打包類命令:

gzip, .gz文件的壓縮和解壓縮

-a,使用ASCII文字模式,-c壓縮後輸出,不改動原始文件,-d解壓,-f強制壓縮-l列出壓縮文件的相關信息,-L顯示版本和版權,-n壓縮文件,不保存文件屬性,-N保存文件屬性-q,不顯示警告,-r遞歸處理,-t測試壓縮文件,-v,顯示壓縮執行過程,-V顯示版本 -<壓縮率>,1到9之間,默認是6

bzip2, .bz2文件壓縮和解壓縮

-c壓縮後輸出,-k保留原始文件,-s降低使用量,-d解壓,-f強行,-t測試,-v顯示過程,-V顯示版本, -<壓縮登錄>1~9,壓縮區塊大小  --repetitive-best文件中有重復資料的時候,可提高壓縮效果,--repetitive-fast,如果有重復的資料出現,則可以提高壓縮速度,

tar,文件打包和解包,-f使用f-f指定的文件名或者設備名,-v顯示過程,-c創建打包,-x恢復備份,-t列出tar包的文件名,-z用GNU的gzip壓縮,-Z用compress壓縮文件或解壓,-j用bzip2壓縮或者解壓

8.文本處理類命令

cat,讀取文本內容,-n顯示行號,-b,同-n,對空行不編號,-s遇到兩個以上的空行,用一個代替

more,分屏顯示內容,-d顯示提示,-s,遇到兩個以上空行用一個代替,+num,從num行開始讀取

head,顯示文本頭部的某些行,-n顯示前n行。

tail,顯示文本文件尾部的若干行-n,顯示尾部n行,+n,從n行顯示到尾部,-F顯示跟蹤不斷增長的文件結尾內容(日志文件常用)

cut,縱向切割輸出文本內容,

paste,縱向合並多個文本輸出,-d<DELIM>分界符

sort,以行為單位對文件進行排序,-b忽略前導空格,-d只考慮空格,字母,數字,-f忽略大小寫,-i,只考慮打印字符,-M排序月份,-n字符串數值排序,-r逆向排序,-u,相同的行,只輸出一行,+n,指定列排序,

uniq,刪除文本中相鄰的重復的行並且輸出,-c,加行號,-d只顯示重復的行,-i忽略大小寫,-u只顯示出現一次的行,-s<N>各行前N個字符不比較,-w<N>各行地N個字符以後不比較

wc統計文本的行數,字符數,字數,-c統計字節數,-l統計行數,-L統計最長的一行的長度,-w統計單詞數。

expand,將文件中的制表符轉換為空格輸出,-i不轉換非空格後的制表符,-t<N>指定制表符為N的寬度,默認是8

unexpand,Expand的反義,-a,轉換所有的空格字符,不僅僅是首部的--first-only只轉換首部的空格,-t<N>

iconv文件編碼轉換,-f指定文本原本編碼,-t指定要轉換的編碼,-c忽略無效字符,-o指定輸出文件

dos2unix,將DOS格式轉換為UNIX格式,-k不改變時間戳,-n,保存到新文件中。

9.信息顯示命令

uname顯示系統信息,-a顯示全部,-s內核名稱,-r內核版本,-v內核版本類型和發布時間,-m系統架構類型,等同arch,-n網絡節點的主機名,-o顯示操作系統

hostname,顯示與主機名相關的信息,-f顯示FQDN,-d顯示DNS域名,等同dnsdomainname,-i顯示主機對應的ip

dmesg,顯示開機信息,-c顯示信息以後清除ring buffer中的內容

uptime    顯示開機到當前的時間

file    顯示文件類型,-z探測壓縮過的文件類型,-L直接顯示符號鏈接指向文件的類型,-f指定要讀取的文件名列表,-v顯示版本信息

stat    從inode中提取並且顯示文件狀態信息或文件系統信息-f顯示文件系統信息,-t簡潔輸出,-L跟隨連接,

du統計磁盤使用量,-c顯示所有項目相加後的量,-h,人性化顯示,-s只分別計算命令列每個參數所占的總量,-S不包括子目錄占用量,-x忽略不同文件系統上的目錄,--max-depth=N,統計N層目錄

df查看磁盤剩余量,-h人性化顯示,-i顯示inode的使用量而非塊使用量,-l顯示本地的文件系統,-t<fstype>顯示指定的文件系統類型的用量-x<fstype>不顯示指定的文件系統類型的用量

top實時顯示進程任務,-c顯示每個進程的完整指令,-u只顯示指定用戶的進程,-i忽略僵死進程,-s使用安全模式消除互動模式下的潛在威脅

free顯示內存使用情況,-b,-k,-m指定單位顯示,-s,持續觀察,-s後是間隔時間秒數,-t顯示內存總和,

w顯示登錄用戶,-s顯示短信息

date顯示和設置時間,-R以RFC 2822規范輸出,-u顯示UTC時間,-s<STRING>設置時間和日期

cal顯示日歷,-m使用周一作為每周的第一天,-y顯示一年的日歷,-3顯示上個月,當月,下月的日歷,

which在$PATH下查找指定文件的位置, -a顯示所有匹配的路徑

whereis在特定目錄中查找符合條件的文件-b只查找二進制文件,-m只查找手冊文件,-s只查找源碼文件,-u查找不包含指定類型的文件,

locale命令,顯示本地支持的語言系統信息-a顯示本地支持的語言系統,-m顯示所有的語言編碼系統

apropos    使用正則搜索手冊頁的名稱和描述。

 

Copyright © Linux教程網 All Rights Reserved