Linux下的文件操作命令:
1.文件瀏覽命令:文件瀏覽命令常用有l(wèi)s和file。需要注意的是踊谋,Linux中的命令是區(qū)分大小寫的影斑,如LS并不是ls。
ls語法:ls[參數(shù)] ··· [文件]···舀武;使用ls命令列出的文件列表信息,默認(rèn)情況下為當(dāng)前目錄下的所有文件离斩,并按照字母順序排列银舱。
常用的參數(shù)說明:-a 表示不隱藏任何以“."開頭的文件;-l 表示使用長格式列出文件信息跛梗;-r 表示逆序排序寻馏;-R 表示遞歸列出所有子目錄的內(nèi)容;-S 表示按文件大小排序核偿;-t 表示按修改時(shí)間排序诚欠。
注意:通常情況下ls以顏色區(qū)分文件類型,常用的有 灰黑色表示普通文件,藍(lán)色表示目錄轰绵,綠色表示可執(zhí)行文件粉寞,紅色表示壓縮文件,淺藍(lán)色表示鏈接文件左腔。
ls顯示目錄信息分為長格式和短格式兩種唧垦。短格式僅顯示文件名,并用相應(yīng)的顏色區(qū)分文件類型液样,一行內(nèi)可以顯示多個(gè)文件或多個(gè)目錄振亮;長格式一行僅顯示一個(gè)文件或目錄信息,如圖
這邊用acc_card 目錄來進(jìn)行解說:drwxr-xr-x? 表示文件或目錄屬性鞭莽,2表示引用次數(shù)坊秸,smart表示所有者,dba表示所屬組撮抓,4096表示長度,Aug 11 2016 表示修改時(shí)間摇锋,acct_card表示文件名或目錄名丹拯。
注意 :drwxr-xr-x? 中第一個(gè)字符表示文件類型(-普通文件,d目錄荸恕,c字符設(shè)備乖酬,b塊設(shè)備,l鏈接文件)融求;第二個(gè)到第四個(gè)字符表示所有者權(quán)限咬像;第五個(gè)到第七個(gè)表示同組者權(quán)限;第八個(gè)到第十個(gè)表示其他人權(quán)限生宛。其中 r表示可讀县昂,w表示可寫,x表示可執(zhí)行陷舅。
例如:查看smart用戶目錄下包含隱含義文件在內(nèi)的后綴為”.txt"的文件倒彰,并采用長格式顯示? :ls? /home/smart /* .txt? -la
file語法:file[選項(xiàng)]··· [-f]? 文件···;file 可以顯示指定文件的類型與編碼格式。
常用的參數(shù)說明:-b表示以簡明方式顯示信息莱睁;-f指定該選項(xiàng)后面的字符串為文件列表待讳;-z查看壓縮文件內(nèi)部的文件信息;-d顯示調(diào)試信息仰剿;-s按照普通文件處理特殊文件创淡,例如字符設(shè)備文件。
例如:查看當(dāng)前目錄下所有以“.txt”為后綴的文件信息: file ./*? .txt南吮。
2.文件拷貝:Linux中常用的拷貝工具是cp琳彩。
cp語法:cp[參數(shù)]··· [源文件]···? 目標(biāo)目錄;將指定的一個(gè)文件或多個(gè)文件拷貝到指定的目錄中
參數(shù)說明:-a 保留鏈接、文件屬性汁针,遞歸拷貝所有子目錄术辐;-d 保留鏈接 ;-f 拷貝時(shí)自動(dòng)替換已存在的目標(biāo)文件施无,不提示用戶辉词;-i 若目標(biāo)文件存在時(shí),提示用戶如何操作猾骡;-r 目錄拷貝瑞躺,遞歸拷貝所有子目錄。
例如:將smart用戶下的 envfile.txt 文件拷貝到smart用戶下的acct_card目錄下兴想,并保留文件屬性幢哨;
?cp -a? /home/smart/envfile.txt??/home/smart/acct_card/
3.文件移動(dòng):Linux中常用的文件移動(dòng)命令mv。
mv語法:mv[參數(shù)] ··· 源文件? ··· 目標(biāo)文件/目錄嫂便;將文件移動(dòng)到另外的目錄或修改文件名稱捞镰。
參數(shù)說明:-I(大寫的i) 若目標(biāo)文件存在,則提示用戶如何操作毙替;-f 移動(dòng)時(shí)自動(dòng)替換已存在的目標(biāo)文件岸售,不提示用戶。
例如:將smart 用戶下的envfile.txt文件厂画,移動(dòng)到acct_card目錄下凸丸,并修改名稱為envfile_mv.txt;
mv /home/smart/envfile.txt??/home/smart/acct_card/envfile_mv.txt
4.文件鏈接:Linux常用的鏈接命令為ln袱院。
ln語法:ln[參數(shù)] ··· 目標(biāo)文件 ··· 鏈接名屎慢;建立一個(gè)鏈接文件,該鏈接文件指向的目標(biāo)文件忽洛。默認(rèn)情況下建立硬鏈接腻惠。
參數(shù)說明:-i 若目標(biāo)文件存在,則提示用戶如何操作欲虚;-f 直接自動(dòng)替換目標(biāo)文件妖枚,不提示用戶;-s 建立符號(hào)鏈接(軟鏈接)苍在,而不是硬鏈接绝页,獲得更大的靈活度。
例如:將smart用戶的envfile.txt 在?acct_card目錄下建立envfile的軟鏈接寂恬;ls -s??/home/smart/envfile.txt??/home/smart/acct_card/envfile
5.文件刪除:Linux中常用的刪除命令rm续誉。
rm語法:rm[參數(shù)]··· 目標(biāo)文件 ···;刪除指定的目標(biāo)文件初肉。
參數(shù)說明:-f 忽略不存在的文件酷鸦,不給出提示;-r 遞歸刪除子目錄中的所有文件,-i 以交互的方式提示用戶確認(rèn)刪除臼隔。
例如:刪除目錄acct_card下的所有后綴為“.txt"的文件嘹裂; rm -rf /home/smart/acct_card/*? .txt
6.修改文件屬性:Linux中chmod修改文件的訪問權(quán)限屬性,touch修改文件的時(shí)間屬性摔握。
chmod 語法:chmod[參數(shù)]···? {模式[,模式]··· | 八進(jìn)制模式 }? 文件···寄狼;該命令用于修改指定的文件或目錄的權(quán)限
模式的格式為:[ugoa] * ([+-=]([rwxXst]*|[ugo])) + (該模式采用的正則表達(dá)式表示);注意其中 u表示所有者氨淌,g表示同組者泊愧,o表示其他用戶,a表示所有的用戶(包括u和g)盛正;”-“表示刪除某種權(quán)限删咱,”=“表示賦予某種權(quán)限,”+“表示添加某種權(quán)限豪筝,其中r表示可讀痰滋,x表示可執(zhí)行。八進(jìn)制模式時(shí)续崖,4表示讀敲街,2表示寫,1表示執(zhí)行袜刷,即7表示聪富,可讀可寫可執(zhí)行莺丑,另外我們通常用三個(gè)八進(jìn)制來表示所有者著蟹,所屬組,其他用戶梢莽。
參數(shù)說明:-c 表示 僅在有修改的時(shí)顯示結(jié)果萧豆;-f 去除大部分的錯(cuò)誤信息;-v 處理任何文件都會(huì)顯示詳細(xì)信息昏名;-R以遞歸的方式更改所有文件及子目錄涮雷。
例如:修改smart目錄下的envfile.txt文件為所有者可讀可寫可執(zhí)行,所屬組可讀可寫轻局,其他用戶可執(zhí)行洪鸭。
第一種:chmod? u=rwx,g=rw,o=x? ? /home/smart/envfile.txt?
第二種:chmod? 761??/home/smart/envfile.txt?
touch語法:touch[選項(xiàng)] ··· 文件 ··· ;touch用來修改文件的訪問時(shí)間仑扑,如果文件不存在則默認(rèn)創(chuàng)建空文件览爵。
參數(shù)說明:-a 僅修改時(shí)間;-c 不創(chuàng)建任何文件镇饮;-d字符串? 使用字符串表示時(shí)間蜓竹,而非當(dāng)前時(shí)間;-m 只修改文件的修改時(shí)間;-r 文件 使用指定文件的時(shí)間屬性俱济,而非當(dāng)前時(shí)間嘶是;-t 時(shí)間模式 使用[[CC]YY]MMDDhhmm[.ss]的格式時(shí)間,而非當(dāng)前時(shí)間蛛碌,其中YY表示兩位數(shù)紀(jì)年聂喇,[CC]YY表示四位數(shù)紀(jì)年;MM表示兩位數(shù)月份左医,DD表示兩位數(shù)天數(shù)授帕,hh表示兩位的小時(shí)數(shù),mm表示兩位分?jǐn)?shù)浮梢,ss表示兩位數(shù)秒跛十。
例如:修改文件envfile.txt 的訪問時(shí)間為2019年06月22日18點(diǎn)23分15秒;touch? -a? -t? 201906221823.15???/home/smart/envfile.txt?
7.文件搜索:Linux中文件搜索常用命令有g(shù)rep和find秕硝。
grep語法:grep[參數(shù)] ··· 搜索字符串? 文件 ···芥映;grep用來在指定的文件范圍內(nèi)搜索符合要求的字符串,并將字符串所在的行輸出远豺。
參數(shù)說明:-E 使用擴(kuò)展的正則表達(dá)式奈偏;-G 使用標(biāo)準(zhǔn)的正則表達(dá)式;-f 文件? 從文件中獲取搜索字符串躯护;-s不顯示錯(cuò)誤信息惊来;-v 選擇不匹配的行;-n 同時(shí)輸出行數(shù)棺滞。
例如:輸出envfile.txt 中所有包含env的行裁蚁,并打印行數(shù)輸出;grep? -n? env? ??/home/smart/envfile.txt?
find語法:find [參數(shù)] ··· 路徑 ···[測試]? ··· 動(dòng)作继准;路徑表示用來指定所有搜索文件的范圍枉证,測試表示用來提出搜索的條件,動(dòng)作表示用來指出對(duì)符合測試條件的文件所進(jìn)行操作移必。
參數(shù)說明:-P 對(duì)符號(hào)連接文件室谚,使用文件本身的屬性;-L 對(duì)于符號(hào)連接的文件崔泵,使用被連接的文件屬性秒赤。
測試說明:-name 字符串 表示按照指定的字符串匹配文件名,“字符串”可以使用”*“憎瘸、”入篮?“等匹配符;-perm 字符串 表示按照指定的字符串所代表的權(quán)限來匹配文件含思,”字符串“的格式與chmod的模式相同崎弃;-user 字符串 表示按照字符串指定的文件所有者匹配文件甘晤;-group 字符串 表示按照字符串指定的文件所有者所在的組匹配文件;-mtime {-|+}n 表示按照文件修改時(shí)間匹配文件饲做,”-“表示n天以內(nèi)线婚,”+“表示n天以前;-atime {-|+}n 表示按照文件訪問時(shí)間匹配文件盆均;-ctime {-|+}n 表示按照文件創(chuàng)建時(shí)間匹配文件塞弊;-type 字符 表示按照字符所指定的文件類型匹配文件,其中字符包含:b 塊設(shè)備文件泪姨、c字符設(shè)備文件游沿、f普通文件、l軟鏈接文件肮砾、p管道文件诀黍;-size n[單位] 表示按照指定文件大小匹配文件,默認(rèn)單位是塊(512字節(jié))仗处,單位包括:c字節(jié)眯勾、b塊、w字(2字節(jié))婆誓、k表示KB吃环、M表示MB、G表示GB洋幻;-depth 表示在查找文件時(shí)郁轻,先找當(dāng)前目錄的文件,然后在其子目錄查找文留。
動(dòng)作說明:-print? 將搜索結(jié)果通過標(biāo)準(zhǔn)輸出設(shè)備打印好唯,默認(rèn)動(dòng)作;-exec 命令 針對(duì)搜索結(jié)果執(zhí)行指定的命令厂庇,在命令中使用 ”{} \;“ 來代表結(jié)果(注意{}和\中間有空格渠啊,最后需要帶一個(gè)"输吏;")权旷; -ok 命令? 屬性與-exec相同,但是在執(zhí)行前需要用戶確認(rèn)贯溅。
例如:在/home/smart目錄及子目錄下查找包含”你好“的字符串拄氯,7天前創(chuàng)建的文件,并將他們刪除它浅,并且刪除前需要用戶確認(rèn)译柏;
find? /home/smart? -name "你好"? -ctime? +7 -ok rm -f? {} \;
Linux下的目錄操作命令:
1.創(chuàng)建目錄:常用的命令有mkdir
mkdir語法:mkdir[參數(shù)]··· 目錄 ···;在當(dāng)前目錄下創(chuàng)建指定的目錄姐霍。
參數(shù)說明:-m模式? 對(duì)新創(chuàng)建的目錄設(shè)置權(quán)限模式鄙麦,模式與chmod模式相同典唇;-p 需要時(shí)創(chuàng)建上層目錄;-v 創(chuàng)建時(shí)顯示相關(guān)信息胯府。
例如:在/home/smart/qq目錄下創(chuàng)建aa目錄介衔,如果qq不存在時(shí),需創(chuàng)建qq;? mkdir? ?-p? qq/aa
2.刪除目錄:常用命令為rmdir
rmdir語法:rmdir[參數(shù)]··· 目錄 ···骂因;如果所列目錄為空則刪除該目錄炎咖。
參數(shù)說明:-p 刪除目錄后,嘗試刪除所指定目錄中所有的上層目錄 寒波;-v 刪除過程中顯示相關(guān)信息乘盼。
例如:刪除aa目錄; rmdir??/home/smart/qq/aa
3.跳轉(zhuǎn)目錄:常用命令為 cd
cd語法:cd? 目錄俄烁;目錄可以通常指目錄的名稱绸栅,也可以時(shí)以一些特殊符號(hào)表示,如:”..“ 表示當(dāng)前目錄的上一級(jí)页屠,”~“表示用戶的主目錄阴幌;”-“表示上一次跳轉(zhuǎn)的當(dāng)前目錄所在目錄。
例如:進(jìn)入到指定的目錄qq中卷中; cd??/home/smart/qq矛双。
4.查看當(dāng)前目錄路徑:通常用pwd
pwd語法:pwd,在標(biāo)準(zhǔn)輸出設(shè)備上輸出當(dāng)前目錄。