iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 30
1
自我挑戰組

30天學python系列 第 30

[Day30] Linux 作業系統 - 實用程序

實用程序

文件和文件夾操作

  1. 創建 / 刪除空目錄 - mkdir / rmdir
    https://ithelp.ithome.com.tw/upload/images/20191007/20121116HmOPICpVWV.png
  2. 創建 / 刪除文件 - touch / rm。
    • touch 命令用於創建空白文件或修改文件時間。
      在 Linux 系統中一個文件有三種時間:
      • 更改內容的時間 - mtime。
      • 更改權限的時間 - ctime。
      • 最後訪問時間 - atime。
    • rm 的幾個重要參數:
      • -i:交互式刪除,每個刪除項都會進行詢問。
      • -r:刪除目錄並遞歸的刪除目錄中的文件和目錄。
      • -f:強制刪除,忽略不存在的文件,沒有任何提示。
        https://ithelp.ithome.com.tw/upload/images/20191007/20121116RPbdSIluur.png
  3. 切換和查看當前工作目錄 - cd / pwd。
  4. 查看目錄內容 - ls。
    • -l:以長格式查看文件和目錄。
    • -a:顯示以點開頭的文件和目錄(隱藏文件)。
    • -R:遇到目錄要進行遞歸展開。
    • -d:只列出目錄,不列出其他內容。
    • -S / -t:按大小 / 時間排序。
  5. 查看文件內容 - cat / tac / head / tail / more / less / rev / od。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116J7fUVLOxbk.png
    中間還有一大段 html。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116swAJqrBeGO.png
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116eJT5c7SBf0.png
  6. 拷貝/移動文件 - cp / mv。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116mI8sn9j7rY.png
  7. 文件重命名 - rename。
[root@iZwz97tbgo9lkabnat2lo8Z ~]# rename .htm .html *.htm
  1. 查詢文件和查詢內容 - find / grep。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116SKy7Ji0t0V.png
  2. 創建鏈接和查看鏈接 - ln / readlink。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116kTquFa6JTV.png
  3. 壓縮 / 解壓縮和歸檔 / 解歸檔 - gzip / gunzip / xz。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116s35t4jrNRT.png
  4. 歸檔和解歸檔 - tar。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116pcUbz2aEFo.png
    中間還有一大段的檔案
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116DwU0IkDUoc.png
  5. 將標準輸入轉成命令行參數 - xargs。
    找尋當前路徑下的 html 文件,然後通過 xargs 將這些文件作為參數傳給 rm 命令,實現查詢並刪除文件的操作。
    https://ithelp.ithome.com.tw/upload/images/20191008/20121116gUPExNz78w.png
    下面的命令將 a.txt 文件中的多行內容變成一行輸出到 b.txt 文件中,其中 < 表示從 a.txt 中讀取輸入,> 表示將命令的執行結果輸出到 b.txt 中。
[root@iZwz97tbgo9lkabnat2lo8Z ~]# xargs < a.txt > b.txt
  1. 顯示文件或目錄 - basename / dirname。
  2. 其他相關工具。
    • sort - 對內容排序
    • uniq - 去掉相鄰重複內容
    • tr - 替換指定內容為新內容
    • cut / paste - 剪切 / 黏貼內容
    • split - 拆分文件
    • file - 判斷文件類型
    • wc - 統計文件行數、單詞數、字節數
    • iconv - 編碼轉換
    [root ~]# cat foo.txt
    grape
    apple
    pitaya
    [root ~]# cat bar.txt
    100
    200
    300
    400
    [root ~]# paste foo.txt bar.txt
    grape   100
    apple   200
    pitaya  300
            400
    [root ~]# paste foo.txt bar.txt > hello.txt
    [root ~]# cut -b 4-8 hello.txt
    pe      10
    le      20
    aya     3
    0
    [root ~]# cat hello.txt | tr '\t' ','
    grape,100
    apple,200
    pitaya,300
    ,400
    [root ~]# split -l 100 sohu.html hello
    [root ~]# wget https://www.baidu.com/img/bd_logo1.png
    [root ~]# file bd_logo1.png
    bd_logo1.png: PNG image data, 540 x 258, 8-bit colormap, non-interlaced
    
    https://ithelp.ithome.com.tw/upload/images/20191008/201211161c9yPBIUbZ.png

終於完成 30 天的挑戰,後面的教學我會在慢慢繼續往下看,希望能成為像標題的 python 大師。


上一篇
[Day29] Linux 作業系統 - 基礎命令
系列文
30天學python30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
阿展展展
iT邦好手 1 級 ‧ 2020-01-29 00:11:43

非常龐大的 code 量
恭喜完賽 /images/emoticon/emoticon42.gif

我要留言

立即登入留言