linux指令學習筆記(一)

来源:http://www.cnblogs.com/zenglong/archive/2016/06/21/linuxStudy.html
-Advertisement-
Play Games

1. 查看目錄下有什麼文件/目錄 > ls //list列出目錄的文件信息 > ls -l 或ll //list -list以“詳細信息”查看目錄文件 > ls -a //list -all查看目錄“全部”(包括隱藏文件)文件 > ls -al //list -all list 查看目錄“全部”(包 ...


1. 查看目錄下有什麼文件/目錄
    > ls            //list列出目錄的文件信息
    > ls  -l 或ll   //list -list以“詳細信息”查看目錄文件
    > ls  -a        //list  -all查看目錄“全部”(包括隱藏文件)文件
    > ls  -al       //list  -all list 查看目錄“全部”(包括隱藏文件)文件,以“詳細信息”展示
    > ls  目錄      //查看指定目錄下有什麼文件
    > ls -i         //查看文件索引號碼

2. 進行目錄切換
    > cd  dirname       //進行目錄切換
    > cd  ..            //向上級目錄切換
    > cd  ~    或 cd     //直接切換到當前用戶對應的家目錄

3. 查看完整的操作位置
    > pwd

4. 用戶切換
    > su -  或  su - root       //向root用戶切換
    > exit          //退回到原用戶
    
    > su 用戶名     //普通用戶切換

    多次使用su指令,會造成用戶的“疊加”:
    (su和exit最好匹配使用)
    jinnan--->root--->jinnan--->root--->jinnan

5. 查看當前用戶是誰
    > whoami

6. 圖形界面 與 命令界面 切換
    root用戶可以切換
    ># init 3
    ># init 5

7. 查看一個指令對應的執行程式文件在哪
    > which  指令


8. 目錄相關操作
    1) 創建目錄 make directory
    > mkdir  目錄名字
    > mkdir -p newdir/newdir/newdir       //遞歸方式創建多個連續目錄
      
      //新的多級目錄數目如果大於等於2個,就要使用-p參數
      mkdir      dir/newdir                //不用-p參數
      mkdir  -p  dir/newdir/newdir         //使用-p參數
      mkdir  -p  newdir/newdir/newdir      //使用-p參數

    2) 移動目錄(文件和目錄)  move
    > mv  dir1  dir2            //把dir1移動到dir2目錄下
    > mv  dir1/dir2  dir3       //把dir2移動到dir3目錄下
    > mv  dir1/dir2  dir3/dir4  //把dir2移動到dir4目錄下
    > mv  dir1/dir2  ./         //把dir2移動到當前目錄下

    3) 改名字  (文件和目錄)
    > mv  dir1  newdir          //修改dir1的名字為newdir
    
    mv是“移動” 和 “改名字” 合併的指令
    > mv  dir1  ./newdir            //dir1移動到當前目錄下 並改名字為newdir
    > mv  dir1/dir2  dir3           //dir2移動到dir3目錄下, 並改名字為“原名”
    > mv  dir1/dir2  dir3/newdir    //dir2移動到dir3目錄下,並改名字為“newdir”
    > mv  dir1/dir2  dir3/dir4      //dir2移動到dir4目錄下, 並改名字為“原名”
    > mv  dir1/dir2  dir3/dir4/newdir   //dir2移動到dir4目錄下, 並改名字為“newdir”

    4) 複製(改名字)(文件和目錄) copy
    ① 文件的複製
    > cp  file1  dir/newfile2         //file1被覆制一份到dir目錄下,並改名字為“newfile2”
    > cp  file1  dir               //file1被覆制一份到dir目錄下,並改名字為“原名”
    > cp  dir1/filea  dir2/newfile  //filea被覆制一份到dir2目錄下,並改名字為“newfile”
    ② 目錄的複製(需要設置-r[recursive遞歸]參數,無視目錄的層次)
    > cp -r dir1   dir2             //dir1被覆制到dir2目錄下,並改名字為"原名"
    > cp -r  dir1/dir2  dir3/newdir  //dir2被覆制到dir3目錄下,並改名字為"newdir"
    > cp -r  dir1/dir2  dir3/dir4   //dir2被覆制到dir4目錄下,並改名字為"原名"
    > cp -r  dir1/dir2  dir3/dir4/newdir   //dir2被覆制到dir4目錄下,並改名字為"newdir"
    > cp -r  dir1  ../../newdir     //dir1被覆制到上兩級目錄下,並改名字為"newdir"

    ⑤ 刪除(文件和目錄)remove
    > rm  文件
    > rm -r  目錄           //-r[recursive遞歸]遞歸方式刪除目錄
    > rm -rf  文件/目錄     //-r force  遞歸強制方式刪除文件
                            force強制,不需要額外的提示
      rm  -rf  /

9. 文件操作
    1) 查看文件內容
        cat  filename       //列印文件內容到輸出終端
        more  filename      //通過敲回車方式逐行查看文件的各個行內容
                            //預設從第一行開始查看
                            //不支持回看
                            //q 退出查看
        
        less                //通過“上下左右”鍵查看文件的各個部分內容
                            //支持回看
                            //q 退出查看
        
        head -n filename    //查看文件的前n行內容
        tail -n filename    //查看文件的最末尾n行內容
        
        wc filename         //查看文件的行數

    2) 創建文件
        > touch  dir1/filename
        > touch  filename
    3) 給文件追加內容
        > echo 內容 > 文件名稱      //把“內容”以[覆蓋寫]方式追加給“文件”
        > echo 內容 >>  文件名稱    //把“內容”以[追加]形式寫給“文件”
        (如果文件不存在會創建文件)

10. 用戶操作
    配置文件:/etc/passwd
    1) 創建用戶 user add
    ># useradd
    ># useradd  liming          //創建liming用戶,同時會創建一個同名的組出來
    ># useradd  -g 組別編號  username   //把用戶的組別設置好,避免創建同名的組出來
    ># useradd  -g 組編號  -u 用戶編號  -d 家目錄   username

    2) 修改用戶 user modify
    ># usermod  -g 組編號  -u 用戶編號  -d 家目錄  -l 新名字  username
    (修改家目錄時需要手動創建之)

    3) 刪除用戶 user delete
    ># userdel  username
    ># userdel -r  username    //刪除用戶同時刪除其家目錄


    4) 給用戶設置密碼,使其登錄系統
    > passwd  用戶名

11. 組別操作
    配置文件: /etc/group
    1) 創建組 group add
    ># groupadd  music
    ># groupadd  movie
    ># groupadd  php

    2) 修改組 group modify
    ># groupmod  -g gid  -n 新名字  groupname

    3) 刪除組 group delete
    ># groupdel  groupname    //組下邊如果有用戶存在,就禁止刪除

12. 查看指令可設置的參數
    > man 指令
   
13. 給文件設置許可權
    1) 字母相對方式設置許可權
    //  針對一個組別設置許可權,其他組別許可權沒有變化,稱為“相對方式”許可權設置
    chmod指令
    chmod u+rwx  filename  //給filename文件的主人增加“讀、寫、執行”許可權
    chmod g-rx  filename   //給filename文件的同組用戶 刪除“讀、執行”許可權

    chmod u+/-rwx,g+/-rwx,o+/-rwx  filename
    說明:
    ① 每個單元"+"  "-"只能使用一個
    ② 可以同時給一個組或多個組設置許可權,組別之間使用","分割
    ③ 每個單元的許可權可以是"rwx"中的一個或多個
    >chmod u+w,g-rx,o+rw  filename   //給filename文件主人增加寫許可權,同組刪除讀、執行許可權,其他組增加讀、寫許可權
    >chmod u+w,u-x  filename     //給filename文件主人“增加寫許可權”同時“刪除執行許可權”
    
    chmod +/-rwx  filename  //無視具體組別,統一給全部的組設置許可權
    >chmod +rw  filename    //給filename全部用戶增加“讀、寫”許可權

    2) 數字絕對方式設置許可權
    r讀:4      w寫:2      x執行:1
    0: 沒有許可權
    1:執行
    2:寫
    3:寫、執行
    4:讀
    5:讀、執行
    6:讀、寫
    7:讀、寫、執行

    chmod  ABC  filename    //ABC分別代表主人、同組、其他組用戶的數字許可權
    >chmod 753  filename    //主人讀、寫、執行;同組讀、執行;其他組寫、執行

    註意:修改的許可權相對“比較少”的時候使用“字母”方式
         相反,許可權變動“非常多”的時候就使用“數字”方式
    

14. 在文件中查找內容
    grep  被搜尋內容   文件
    > grep  hello   passwd      //在passwd文件中搜索hello內容
                                //會把hello所在行的內容都列印到終端顯示

15. 計算文件占據磁碟空間大小
    > du  -h  文件(目錄)
   

16. 文件查找
    find  查找目錄  選項 選項值  選項 選項值 ...
    
    1) -name選項 根據名字進行查找
        > find  /  -name  passwd[完整名稱]      //"遞歸遍歷"系統全部目錄,尋找名稱等於"passwd"的文件
        > find  /  -name  "pas*"[模糊查找]      //在系統全部目錄,模糊查找一個名字是“pas”開始的文件
        > find  /  -name  "*er*"                //文件名字有出現“er”字樣即可,不要位置
    2) 限制查找的目錄層次 -maxdepth  -mindepth
       -maxdepth 限制查找的最深目錄
       -mindepth 限制查找的最淺目錄
       > find  /  -maxdepth 4 -name passwd
       > find  /  -maxdepth 4 -mindepth 3 -name passwd
    3) 根據大小為條件進行文件查找
        -size  +/-數字
                +號表示大小大於某個範圍
                -號表示大小小於某個範圍
        大小單位:
            -size  5    //單位是“512位元組”  5*512位元組
            -size  10c  //單位是“位元組”     10位元組
            -size  3k   //單位是“千位元組”   3*1024位元組
            -size  6M   //單位是“1024*千位元組”   6M兆位元組
        > find  ./  -size  14c     //在當前目錄查找大小等於14位元組的文件
        > find  /  -size +50M       //在系統全部目錄裡邊查找大小大於50M的文件
17. 程式埠有關
    netstat -apn 查看所有的埠和使用情況
    netstat -apn | grep svn 在所有中查找
    
18. 查看系統是否安裝軟體
    rpm安裝的軟體查看方式
        rpm -qa | grep tomcat
    make && make install安裝的軟體查看方式
        find -name tomcat
    
    參考:http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/12/2208205.html
    
19. 查看當前進程信息
    ps 指令
    -A 顯示所有進程
    -u root 指定用戶root的所有進程
    -au 顯示較詳細的資訊
    -aux 顯示所有包含其他使用者的行程
    
    參考:http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html
    


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 開始運行: 信息輸入: 身份證號查詢: 准考證號查詢: 信息刪除: 輸入錯誤信息: ...
  • 按照我之前安裝5.6的安裝方法(MySQL免安裝版下載與配置)安裝5.7的時候出現問題: mysql服務無法啟動,服務沒有報任何錯誤 其實在這學期開始學習mysql的時候,就聽老師同學說,登錄不了的問題,當時沒有在意,也是因為電腦上早就安裝了mysql5.6,也就沒有在意這個問題。這兩天win10系 ...
  • 本章將講解,Sybase下如何把含逗號字元串轉化為結果集。 示例如下: 把含有逗號的字元串,拆開放入結果集。 當用到臨時表時,可以直接把臨時表當做物理表一樣使用。 over ...
  • 說說複合索引 寫索引的博客太多了,一直不想動手寫,有一下兩個原因: 一是覺得有炒剩飯的嫌疑,有兄弟曾說:索引嗎,只要在查詢條件上建索引就行了,真的可以這麼暴力嗎? 二來覺得,索引是個非常大的話題,很難概括出所有的情況,你不整齣點新意來,倒是有抄襲照搬的嫌疑 既然寫了,就寫一點稍微不一樣的東西出來, ...
  • 今天在Java學習群里看到有人問:用alert能不能修改表結構?我第一反應是,alert是彈窗啊,怎麼修改表結構?後來再看才知道,是那人打錯了!我也暈了一下,還是記一下吧!alter是修改表結構的,alert()是彈出框! —————————————————————————————————————— ...
  • 對於數據獲取,如果查詢優化器在執行計劃里選擇了索引,那麼SQL Server里的每個索引可以提高你的查詢性能。但在另一方面,每個索引也會傷及你的性能,因為在INSERT,UPDATE和DELETE期間,每個索引需要被維護。因此對於你的工作量,儘可能創建少的索引非常重要——不然在寫操作期間,你會有巨大 ...
  • 之前一直不知道在shell中調用read賦值後,怎麼傳給makefile中的變數,後來才恍然大悟。 myname := $(shell read -p "Enter your name:" name;\ echo $$name) all : @echo ${myname} ...
  • 1. 從mysql的官網下載mysql57-community-release-el6-8.noarch.rpm 2. 安裝第一步下載的rpm 3. 安裝完成之後,我們發現在/etc/yum.repos.d目錄下新增了兩個文件:其中第二文件記錄了mysql的源信息。 4. 查看可用的mysql安裝源 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...