4、常见命令操作(详细)
生活随笔
收集整理的這篇文章主要介紹了
4、常见命令操作(详细)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
先介紹幾個屬性
-f force強(qiáng)制 -i interactive 提示 -p 創(chuàng)建目錄 -r 刪除目錄介紹幾個符號
~ 用戶的家目錄- 上次用戶目錄 0 標(biāo)準(zhǔn)輸入1 標(biāo)準(zhǔn)輸出2> 標(biāo)準(zhǔn)錯誤輸出2>&1 把標(biāo)準(zhǔn)錯誤重定向到標(biāo)準(zhǔn)輸出(也可以用>&)詳細(xì)解讀命令
1、mkdir創(chuàng)建目錄mkdir 一個目錄mkdir -p 多層目錄 2、touch 摸創(chuàng)建不存在的文件若文件存在,則改變文件的時間戳 3、cat查看文件的內(nèi)容 cat oldboy.txt輸入重定向-->多行寫入文件 cat >oldboy.txt cat >>oldboy.txt將幾個文件合并為一個文件 cat f1.txt f2.txt > file.txt cat f1.txt f2.txt >> file.txt 【補(bǔ)充:tac】行反轉(zhuǎn)內(nèi)容輸出 4、ls 查看路徑ls -a 所有文件(隱藏文件也顯示出來)ls -l 文件的詳細(xì)信息也打印出來ls -s 文件大小 5、echo打印到屏幕寫入到文件echo "ABCD" > oldboy.txt echo "ABCD" >> oldboy.txt 6、vi、vim編輯器:set nu 顯示行號:w write:q quit行號+gg 定位當(dāng)某一行g(shù)g 到文件頭部 GG當(dāng)文件尾部dd 刪除當(dāng)前行yy 拷貝當(dāng)前行p 粘貼 7、head與tail (默認(rèn)顯示10行)head -n 10 oldboy.txt 打印前10行head -n -10 oldboy.txt 打印除了后10行外的其他行 tail同理 【補(bǔ)充】tail可以跟蹤一個文件結(jié)尾的變化tail -f oldboy.txt ================================================================================================ 8、復(fù)制 cp(復(fù)制目錄時,加上-r,否則會失敗) 提示:最常用的是-a,因?yàn)?span id="ze8trgl8bvbq" class="hljs-operator">-a包含-r,-p,-dcp f1.txt /else/f2.txt 如果/else/文件下沒有f2.txt,則將f1.txt復(fù)制到/else/文件下,并改名為f2.txt ;如果/else/文件下有f2.txt,會提示是否覆蓋。cp -r /data1 /else/ 將目錄data1復(fù)制到/else/下 9、刪除 rm remove(刪除目錄時,加上-r,否則會失敗)-f 強(qiáng)制刪除,不會提示-i 提示是否刪除-r 刪除目錄 10、移動、改名 mv(移動目錄時,不用加-r) 提示:移動不用任何屬性mv f1.txt f2.txt 如果當(dāng)前目錄下沒有f2.txt,執(zhí)行的操作是:把f1.txt改名為f2.txt 目錄也同理:mv dir1 dir2 將目錄dir1改名為dir2 ================================================================================================ 【屬性介紹】-r 目錄-v 不包含 沒有-v表示包含-n 行號【符號介紹】 [ ] 用來框出來一個范圍,例如:[0-9] [a-z] [a-zA-Z] //注意:中間用的是 - ,而不是 .. ^兩種含義[^] ^在[] 內(nèi),表示反向選擇^[] ^在[] 外,表示以_____為開頭^[^ ] 表示,查找以[^ ]為開頭的內(nèi)容三劍客 1、grep 文件的搜索工具 “過濾” -E(同時過濾多個字符串) i(忽略大小寫) (1) grep 'test' d* 在文件名為d*下搜索字符串為'test'的并打印出來find /data -name "da*" -type f | xargs grep 'ee' 搜索到多個文件,在查找文件中(而不是目錄中)有關(guān)鍵字為'ee'的項(xiàng),并打印輸出 (2)grep -v 'test' oldboy.txt 不包含'test'的輸出 (3)grep [^0-3] oldboy.txt 查找oldboy.txt中不包含0-3的內(nèi)容grep ^[^0-3] oldboy.txt 查找oldboy.txt中不以0-3為開頭的內(nèi)容 (4)行首^ 行尾$查找空白行 grep '^$' oldboy.txt查找以.結(jié)尾 grep '\.$' oldboy.txt (5).一個元素 _*表示0個_元素或者0個以上的_元素 例子grep 'QQQ*' oldboy.txt 查找兩個或者兩個以上的包含Q的內(nèi)容(至少兩個Q)grep g..d oldboy.txt g和d中間只有兩個任意元素grep g.*d oldboy.txt g和d中間有任意個數(shù)的任意元素grep g'[0-9][0-9]*' oldboy.txt g和d中間有任意個數(shù)的數(shù)字元素2、sed 管道命令 “行” “取各種內(nèi)容”鏈接:http://blog.csdn.net/improve100/article/details/50956173查找 p 輸出指定內(nèi)容,但默認(rèn)會輸出2次匹配的結(jié)果;因此使用-n取消默認(rèn)輸出 增加 a 追加文本到指定行后 i 插入文本到指定行 刪除 d 刪除指定的行 打印文件內(nèi)容但不包含oldboy 替換 s###g c 用新行取代舊行 (1)查找sed -n '1~2p' person.txt 說明:取行就用sed,最簡單sed -n '/CTO/p' person.txt 按字符串查詢 混合查詢sed -n '2,/CFO/p' person.txtsed -n '/feixue/,2p' person.txt 特殊情況,前兩行沒有匹配到feixue,就向后匹配,如果匹配到feixue就打印此行 (2)新增 a i 單行增加sed '2a 106,dandan,CSO' person.txt a 追加文本到2行后sed '2i 106,dandan,CSO' person.txt i 插入文本到指定行2行 多行增加 無非就是有\(zhòng)nsed '2a 106,dandan,CSO\n107,bingbing,CCO' person.txt(3)刪除 dsed '1,2d' oldboy.txt 除去oldboy.txt中1-2行的內(nèi)容,把其他的輸出sed '10,$d' oldboy.txt 除去oldboy.txt中10-末尾的內(nèi)容,并把其他的內(nèi)容輸出sed '/oldboy/d' person.txt 刪除包含"oldboy"的行 (4)替換 c :c 用新行取代舊行sed '2c ABCDEFG' oldboy.txt 用新行ABCDEFG替換第2行's#▇#▲#g' :字符串替換sed 's#ABCD#abcd#g' oldboy.txt 替換,只是替換后輸出,并沒有改變文件的內(nèi)容練習(xí)題:
題目1、如何過濾出已知當(dāng)前目錄下的所有一級目錄(提示:不好喊oldboy目錄下面目錄的子目錄以及隱藏目錄,即只是一級目錄)ls -l 中以d開頭的就是目錄 答1:ls -l . | grep ^d .表示當(dāng)前目錄,d表示目錄正則表達(dá)式:^表示以____開頭,如:^d$表示以____結(jié)尾,如:oldboy$^$表示空行[^]:^在[]里面表示“非” 或者ls -dl */ls -l | sed -n '/^d/p' -n取消默認(rèn)輸出 p打印 答2:ls -F . | grep /$ ___$表示以什么結(jié)尾注:ls -F輸出結(jié)果后邊以/結(jié)尾的是目錄 答3:find . -type d -maxdepth 1 -mindepth 1 小結(jié): (1)主要是ls的相關(guān)參數(shù)的實(shí)戰(zhàn)應(yīng)用 ls的參數(shù):-p -F 在每個文件名后附上一個字符以闡明該文件的類型,“*”表明可執(zhí)行的一般文件; “/”表明目錄; “@”表明符號連接; “|”表明FIFOs; “=”表明套接字(sockets)。-d 目錄directory-l 列出文件的具體信息。-i 輸出文件的 i 節(jié)點(diǎn)的索引信息。 (2)共給出了7中方法,當(dāng)前能熟練記住前兩中ls的用法即可,find也是個重要命令 (3)本文用到的find的參數(shù)有: -type , -name , ! 非題目2、總結(jié)
以上是生活随笔為你收集整理的4、常见命令操作(详细)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3、常见命令操作
- 下一篇: 5、Linux系统的目录结构