04.學習筆記-文件及文本管理常用命令

目錄管理

ls、pwd、cd、mkdir、rmdir、tree


mkdir:創建空目錄

-p 如果創建目錄的父目錄不存在,創建父目錄

-v 顯示目錄創建過程

例:[root@localhost /]# mkdir -pv /usr/bin/abc/a

    mkdir: 已創建目錄 "/usr/bin/abc"

    mkdir: 已創建目錄 "/usr/bin/abc/a"


rmdir:刪除目錄且爲最下層目錄

-p 如父目錄下無其他文件目錄,則一併刪除

-v 顯示目錄刪除過程

例: [root@localhost /]# rmdir -pv /usr/bin/abc/a

     rmdir: 正在刪除目錄 "/usr/bin/abc/a"

     rmdir: 正在刪除目錄 "/usr/bin/abc"

    rmdir: 正在刪除目錄 "/usr/bin"

     rmdir: 刪除目錄 "/usr/bin" 失敗: 目錄非空


文件管理

touch、stat、file、cp、mv、rm、install


touch:改變文件的時間戳 如目標文件不存在則創建

-a 只改變存取時間

-c 不創建任何文檔

-m 只更改變動時間

-t 使用指定的時間   [[CC]YY]MMDDhhmm[.ss] 

例:[root@localhost etc]# touch -m a

[root@localhost etc]# stat a

    最近訪問:2016-07-14 16:10:11.029069951 +0800

    最近更改:2016-07-14 16:13:43.857080550 +0800

    最近改動:2016-07-14 16:13:43.857080550 +0800

    [root@localhost etc]# touch -t 08151259 a

    [root@localhost etc]# stat a

    最近訪問:2016-08-15 12:59:00.000000000 +0800

    最近更改:2016-08-15 12:59:00.000000000 +0800

    最近改動:2016-07-14 16:23:31.624109823 +0800

stat:查看文件的時間戳

-f 顯示文件所在的文件系統的狀態

-L 如果目標是鏈接 則顯示原文件信息


file:顯示文件類型

-c  詳細顯示指令執行過程,便於排錯或分析程序執行的情形。  

-L  直接顯示鏈接所指向的文件的類別。

-m<魔法數字文件>  指定魔法數字文件。

-v  顯示版本信息。

-z  嘗試去解讀壓縮文件的內容。


cp:複製文件   語法:cp [ __ ] 源文件位置 指定位置 

(支持多個文件複製到一個目錄,花括號括起來,逗號隔開)

-r 遞歸處理,將制定目錄下的所有文件與子目錄一併處理

-i 交互式,覆蓋前詢問

-f 強行覆蓋

-p 保留到屬組

-l 複製鏈接指向的文件

-P(大寫) 複製鏈接

-a 歸檔複製,常用於備份

例: [root@localhost etc]# cp {./a,./b} ./1

[root@localhost etc]# ls ./1

a  b


mv:移動文件或重新命名

-b:當文件存在時,覆蓋前,爲其創建一個備份; 

-f:若目標文件或目錄與現有的文件或目錄重複,則直接覆蓋現有的文件或目錄; 

-i:交互式,覆蓋前詢問,如果同名,則詢問用戶是否覆蓋目標文件。

例:重命名

[root@localhost etc]# ls ./1

a  b

[root@localhost etc]# mv ./1/a ./1/c

[root@localhost etc]# ls ./1

b  c


rm:刪除文件

-f, --force 忽略不存在的文件,從不給出提示。

-i, --interactive 進行交互式刪除

-r, -R, --recursive 指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除。


install:以將文件/目錄拷貝到指定的地點。 允許控制文件的屬性

 -d 可以創建目錄

-m 指定權限

例:install -d a/b/c e/f結果和mkdir -p a/b/c e/f一樣。


日期管理

date、clock、hwclock、cal

date爲系統時間  

hwclock爲硬件時間

cal是與日期相關的命令


文本管理


1.查看文本

cat、tca、more、less、head、tail


cat:連接文件並打印到標準輸出設備上,cat經常用來顯示文件的內容

-e同E:在每行結束處顯示 $

-n:從1開始對所有輸出的行數編號

注:只輸入cat時,按ctrl+c退出

tac爲cat的逆序顯示

more:一個基於vi編輯器文本過濾器,它以全屏幕的方式按頁顯示文本文件的內容

按Space鍵:顯示文本的下一屏內容。

按Enier鍵:只顯示文本的下一行內容。 

按斜線符 |:接着輸入一個模式,可以在文本中尋找下一個相匹配的模式。  

按B鍵:顯示上一屏內容。


less:同more一樣,都是分屏顯示的命令

用PageUp鍵向上翻頁

用PageDown鍵向下翻頁

要退出less程序,應按Q鍵。


head:只查看文件的前n行  n默認是10

-n指定顯示幾行

[root@localhost etc]# head -5 ./Kconfig


tail:

-f 顯示文件尾部但不退出

-n指定顯示幾行

等待顯示後續追加的新內容,常用於監控文件變化


2.文本排序及修改

cut、sort、uniq、wc、tr、nano


cut:連接文件並打印到標準輸出設備上,刪除文件中指定字段,

     cut經常用來顯示文件的內容,默認的字段分隔符爲“Tab”

-d 指定字段的分隔符

-f 指定要顯示的字符  eg:1,3 (1和3)  1-3(1到3)

例: [root@localhost /]# cut -f 1,3 /usr/etc/test

config SRCARCHsource "arch/$SRCARCH/Kconfig"

[root@localhost /]# cut -d ' ' -f 1,3 /usr/etc/test

config option     /**將字段分隔符改變爲空格


sort:按首字母從小到大排序

-n 按數值大小排序

-r 降序排序

-k 以第幾個字段爲準開始排序

-u 相同內容只顯示一個

-f 排序時不區分大小寫

-t 指定字段分隔符


[root@mail text]# cat sort.txt 

AAA:BB:CC 

aaa:30:1.6 

ccc:50:3.3 

ddd:20:4.2 

bbb:10:2.5 

eee:40:5.4 

eee:60:5.1

[root@mail text]# sort -nrk 3 -t: sort.txt 

eee:40:5.4 

eee:60:5.1 

ddd:20:4.2 

ccc:50:3.3 

bbb:10:2.5 

aaa:30:1.6 

AAA:BB:CC


uniq:相鄰且相同的行爲重複行

-d 只顯示重複的行

-c 顯示某一行重複的次數


wc:文本統計, 行數,單詞數和字節數  若不指定文件名稱,或是所給予的文件名

    爲“-”,則wc指令會從標準輸入設備讀取數據。

-l 只顯示行數

-w 只顯示單詞數

-c只顯示字節數

-L 最長一行包含的字符數


nano:編輯文本 字符終端的文本編輯器


tr:轉換或刪除字符

-d刪除出現在字符集中的所有字符

例:tr ‘A-Z’‘a-z ’<源文件


新手上路,水平有限,請大家多多批評指正,謝謝

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章