Linux學習筆記!!!

Linux學習博客


一、雜項知識整理

1、添加新磁盤後,ls /dev/sd* 無法讀出,用echo "- - -" /sys/class/scsi_host/host2/scan命令

    觸發磁盤搜索,讀取HBA卡列表,再次執行ls便會顯示。

2、查看目錄或者文件大小:du -sh /DIR

3、兩個特殊設備:/dev/null 數據黑洞  /dev/zero 吐零機

4、如果某磁盤空間將要滿,直接刪除訪問量小的文件時空間一般不會立即釋放。

   此處立刻釋放空間的做法應該是: > /testdir/a 將文件置空   rm -f /testdir/a 然後再刪除文件

5、刪除帶有符號的文件或者文件夾時,應注意符號的中英文區別,例如!和!等。

6、hexedit 十六進制編輯器

7、cat -A 查看文件隱藏字符,windows與Linux中的換行符號不一樣。

    dos2unix   unix2dos  windows和Linux文件相互轉換。

8、pwd -P 如果目錄是鏈接文件,則顯示實際路徑即鏈接後的路徑(物理路徑)

    而非鏈接路徑(符號鏈接)。

9、cd -P 路徑:切換至鏈接後的路徑,與pwd -P類似,例如: 

    [root@localhost project]# cd /testdir/project1
    [root@localhost project1]# ls
    test.a  test.b  test.c  test.d
    [root@localhost project1]# cd -P /testdir/project1
    [root@localhost project]# ls

二、具體命令及事例

1、dd命令:convert and copy a file

    dd if=/PATH/FROM/SRC of=/PATH/TO/DEST

        bs=#  block size複製單元大小

        count=#  複製多少個單元(bs)

    將a文件填充至1G

        dd if=/dev/zero of=/testdir/a bs=1M count=1024

    磁盤copy

        dd if=/dev/sda of=dev/sdb

    備份MBR

        dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1

    破壞MBR中的bootloader

        dd if=/dev/zero of=/dev/sda bs=512 count=1

2、rmdir刪除空目錄

    -p 刪除某目錄後如果其父目錄爲空,則刪除連同父目錄

    -v 顯示過程

3、hexdump命令:查看文件的16進制編碼;例如hexdump aaa

    -n LENGTH 只格式化輸入文件的前LENGTH個字節

    -c 單字節字符顯示

    -C 輸出規範的十六進制和ASCII碼

    -d 雙字節十進制顯示

    -o 雙字節八進制顯示

    -s 偏移 從偏移量開始輸出,跳過開頭指定長度個字節

    -e 格式 指定格式字符串,格式字符串包含在一對單引號中,

        格式字符串形式如:'a/b "format1" "format2"'

4、xxd命令,make a hexdump or do the reverse

    -b 以2進制格式進行輸出

        xxd -b a

    -c 每行輸出多少個字節

        xxd -c4 a

    -g 幾個字節組成一組

        xxd -g4 a

    -i 將文件內容輸出成c的一個數組格式

    -l 輸出幾個字節後結束

        xxd -l4 a

    -p 以一個整塊輸出所有的hex,不是用空格進行分割

    -r 反轉操作,將16進制轉成2進制

    -u 輸出採用大寫

5、ls命令:

    -a 所有文件

    -A 除了路徑的所有文件

    --author,與-l類似  列出所有文件的創建者,包括各種信息

    -B 不列出以~結尾的隱藏文件

    -c 配合-lt:根據ctime排序

        [root@localhost /]# ls -clt
        總用量 36
        drwxrwxrwt.   7 root root 4096 7月  28 12:55 tmp
        drwxr-xr-x.   6 root root 4096 7月  28 11:38 testdir
        dr-xr-x---.   5 root root 4096 7月  28 10:18 root
        drwxr-xr-x.  26 root root  740 7月  28 08:43 run
        drwxr-xr-x.  91 root root 8192 7月  28 08:31 etc
        drwxr-xr-x.  20 root root 3260 7月  28 08:13 dev
        drwxr-xr-x.  20 root root 4096 7月  28 08:13 var
        dr-xr-xr-x.  13 root root    0 7月  28 08:13 sys
        dr-xr-xr-x. 391 root root    0 7月  28 08:13 proc
        dr-xr-xr-x.   4 root root 4096 7月  27 08:04 boot
        drwxr-xr-x.   3 root root   18 7月  26 21:19 media
        drwxr-xr-x.   6 root root   56 7月  26 14:51 home
        drwxr-xr-x.   3 root root   18 7月  24 11:53 mnt
        drwxr-xr-x.   2 root root    6 7月  22 12:18 mydata
        drwxr-xr-x.   2 root root    6 7月  19 21:30 extended
        drwxr-xr-x.   3 root root   15 7月  19 05:00 opt
        drwxr-xr-x.  13 root root 4096 7月  19 04:56 usr

    -d 只顯示目錄

    -g 與-l類似,但是不列出所有者

    -h human-readable

    -si 類似-h,但文件大小取1000的次方而不是1024

    -i 顯示出每個文件的inode號

    -k 以k字節的形式表示文件大小

    -S 根據文件大小排序

    -s 以塊大小爲單位列出所有文件的大小

    -m 列出的文件以逗號分隔

    -o 類似-l,顯示文件除組信息外的詳細信息

    -v 根據版本進行排序

    -X 根據擴展名排序

    -x 逐行累出項目而不是逐欄列出

    -w 自己指定屏幕寬度而不是用目前的數值

    -p 在所有的目錄上顯示出/

    -1 數字1,列出的文件分行顯示

    -r 按照文件名反向排序

    -F 在每類文件後面加上特有的標識,"@"表示符號鏈接、"|"表示FIFOS、

        "/"表示目錄、"="表示套接字。

    -u 根據訪問時間進行排序  

        [root@localhost /]# ls -u
        lib  testdir  root  dev    run  var   usr   media  tmp  mydata  extended
        bin  boot     etc   lib64  sys  proc  sbin  opt    mnt  home    srv

        配合-l顯示訪問時間但根據名稱排序

        [root@localhost /]# ls -ul
        總用量 36
        lrwxrwxrwx.   1 root root    7 7月  28 12:20 bin -> usr/bin
        dr-xr-xr-x.   4 root root 4096 7月  28 10:27 boot
        drwxr-xr-x.  20 root root 3260 7月  28 08:13 dev
        drwxr-xr-x.  91 root root 8192 7月  28 08:30 etc
        drwxr-xr-x.   2 root root    6 7月  19 21:30 extended
        drwxr-xr-x.   6 root root   56 7月  21 18:49 home
        lrwxrwxrwx.   1 root root    7 7月  28 12:25 lib -> usr/lib
        lrwxrwxrwx.   1 root root    9 7月  28 08:13 lib64 -> usr/lib64
        drwxr-xr-x.   3 root root   18 7月  27 10:08 media
        drwxr-xr-x.   3 root root   18 7月  25 12:04 mnt
        drwxr-xr-x.   2 root root    6 7月  22 12:18 mydata
        drwxr-xr-x.   3 root root   15 7月  26 22:57 opt
        dr-xr-xr-x. 390 root root    0 7月  28 08:13 proc
        dr-xr-x---.   5 root root 4096 7月  28 10:26 root
        drwxr-xr-x.  26 root root  740 7月  28 08:13 run
        lrwxrwxrwx.   1 root root    8 7月  27 14:01 sbin -> usr/sbin
        drwxr-xr-x.   2 root root    6 7月  19 05:51 srv
        dr-xr-xr-x.  13 root root    0 7月  28 08:13 sys
        drwxr-xr-x.   6 root root 4096 7月  28 11:38 testdir
        drwxrwxrwt.   7 root root 4096 7月  25 15:34 tmp
        drwxr-xr-x.  13 root root 4096 7月  27 14:10 usr
        drwxr-xr-x.  20 root root 4096 7月  28 08:13 var

        配合-lt顯示訪問時間並且根據訪問時間排序  

        [root@localhost /]# ls -ult
        總用量 36
        lrwxrwxrwx.   1 root root    7 7月  28 12:25 lib -> usr/lib
        lrwxrwxrwx.   1 root root    7 7月  28 12:20 bin -> usr/bin
        drwxr-xr-x.   6 root root 4096 7月  28 11:38 testdir
        dr-xr-xr-x.   4 root root 4096 7月  28 10:27 boot
        dr-xr-x---.   5 root root 4096 7月  28 10:26 root
        drwxr-xr-x.  91 root root 8192 7月  28 08:30 etc
        drwxr-xr-x.  20 root root 3260 7月  28 08:13 dev
        lrwxrwxrwx.   1 root root    9 7月  28 08:13 lib64 -> usr/lib64
        drwxr-xr-x.  26 root root  740 7月  28 08:13 run
        dr-xr-xr-x.  13 root root    0 7月  28 08:13 sys
        drwxr-xr-x.  20 root root 4096 7月  28 08:13 var
        dr-xr-xr-x. 390 root root    0 7月  28 08:13 proc
        drwxr-xr-x.  13 root root 4096 7月  27 14:10 usr
        lrwxrwxrwx.   1 root root    8 7月  27 14:01 sbin -> usr/sbin
        drwxr-xr-x.   3 root root   18 7月  27 10:08 media
        drwxr-xr-x.   3 root root   15 7月  26 22:57 opt
        drwxrwxrwt.   7 root root 4096 7月  25 15:34 tmp
        drwxr-xr-x.   3 root root   18 7月  25 12:04 mnt
        drwxr-xr-x.   2 root root    6 7月  22 12:18 mydata
        drwxr-xr-x.   6 root root   56 7月  21 18:49 home
        drwxr-xr-x.   2 root root    6 7月  19 21:30 extended
        drwxr-xr-x.   2 root root    6 7月  19 05:51 srv
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章