天天看點

Linux基礎(一)Linux基礎(一)

Linux基礎(一)

網絡配置

  1. 執行

    setup

    指令–>Network configuration–>Device configuration–>eth0(暫時選擇DHCP)。實質是修改網卡的配置檔案/etc/sysconfig/network-scripts/ifcfg-eth0内容。
  2. 執行

    ifup eth0

    擷取ip 。
  3. ifconfig eth0檢視擷取的ip 。
  4. 主機ping通即可。
  5. 将/etc/sysconfig/network-scripts/ifcfg-eth0中的ONBOOT=no改為ONBOOT=yes

指令

  1. mkdir 建立目錄 -p 連續建立目錄 -v顯示目錄建立過程
  2. ls 檢視檔案清單 -l 長格式 -d 目錄
  3. cd 切換目錄
  4. pwd 列印工作目錄 -L 輸出$PWD變量值 -P 輸出實體目錄路徑,忽略連結
  5. touch 無檔案則建立,有檔案則更新時間戳 -a 隻更新通路時間 -m 隻更新修改時間
    # 檢視檔案詳細屬性
    stat hello.txt
               
  6. echo 'i am study'>hello.txt

    建立或覆寫檔案。

    echo 'i am study'>>hello.txt

    追加
  7. cat >hello

    亦可輸入多行資料到檔案
    cat >>hello<<EOF
    HELLO
    EOF
    # 其中EOF可以用任何成對字元替代,用于辨別結束
               
  8. xargs 從标準輸入擷取内容建立和執行指令 -n 分組
  9. cp 拷貝 -r 拷貝目錄 -a 相當于-pdr -p 連同檔案的屬性一起複制過去
  10. mv 移動
  11. rm 删除 -f 強制删除 -r 删除目錄
  12. find 查找 -type 檔案類型(f 檔案) -name 檔案名 -mtime 按修改時間查找
    find /data -type f -name 'hello'
    # 使用find删除檔案
    find /data -type f -name "hello" -exec rm {} \;
    find /data -type f -name "*.txt" |xargs rm -f
    # 删除15天以前的日志檔案
    find /log -type f -name "*.log" -mtime +15 |xargs rm -f 
    
               
  13. grep 過濾 -v 排除
    # 輸出時排除包含“hello” 的行
    grep -v hello hello.txt
    cat hello.txt |grep -v hello
    # 輸出包含“hello” 的行
    grep hello hello.txt
    # 比對包含21的行,并列印該行之後9行
    grep 21 -A 9 hello 
    # -B 除比對一行外,顯示該行前面n行
    # -A 除比對一行外,顯示該行後面n行
    # -C  除比對一行外,顯示該行前後各n行
               
  14. head 讀取檔案頭部資料,預設10行
  15. tail 讀取檔案尾部資料,預設10行
  16. alias 檢視别名
    # 屏蔽别名
    \ls
    /bin/ls
    # 删除别名
    unalias ll
    # 添加别名(不要在=周圍加空格)
    alias haha='cal'
    
    # 指令行處理别名,重新開機系統後失效
    # 定義别名永久生效的檔案
    # 全局生效
    /etc/profile 
    # 目前使用者生效
    ~/.bashrc 
               
  17. seq 序列
    seq 100
    seq 2 2 100
    seq 100 >hello
    head -30 hello|tail -10
    # -s 指定分隔符
    seq -s '-' 10
    
               
  18. sed stream eidtor 流編輯器,實作對檔案的增删改查替換
    sed -n '21,30'p hello
    # -n 取消預設輸出
    # p 列印,與引号之間不能有空格 
    # 列印第21行
    sed -n '21'p hello
    # 列印最後一行
    sed -n '$'p hello
    # 替換内容
    sed -i 's#hello#ni hao#g' hello
    # -i 修改檔案内容,不加隻影響輸出
    # s 查找替換
    # g 與s聯合使用,表示對目前行全局比對替換(不加隻每行替換第一個)
    # 分隔符,可以用其他字元替換
    
    find /test -type f -name '*.sh'|xargs sed -i 's#hello#ni hao#g'
    
    sed -i 's#hello#ni hao#g' `find /test -type f -name '*.sh'`
    # 先執行``中的内容
    
               
  19. awk
    awk 'NR>20&&NR<31' hello
    awk 'NR==30' hello
               
  20. history 檢視指令曆史
  21. uname 檢視系統資訊 -m 檢視多少位系統 -a 全部資訊 -r 核心發行版
  22. tree 以樹的形式顯示目錄内容 -a 顯示所有檔案 -d 隻顯示目錄 -f 顯示完整路徑 -i 不顯示樹枝 -F 目錄後顯示/
    # 安裝
    yum -y install tree
    # 預設以目前目錄為起點列出樹
    # 隻顯示一層
    tree -L 1
               

特殊符号

###重定向符号

# > 或1> 輸出重定向:把前面輸出的東西輸入到後面的檔案中,會清除檔案原有内容。
# >> 或1>> 追加輸出重定向:把前面輸出的東西追加到後面的檔案尾部,不會清除檔案原有内容。
# 0< 或< 輸入重定向:輸入重定向用于改變指令的輸入,後面指定輸入内容,前面跟檔案名。
# 0<< 或<< 追加輸入重定向:後跟字元串,用來表示“輸入結束”,也可用ctrl+d來結束輸入。
# 2> 錯誤重定向:把錯誤資訊輸入到後面的檔案中,會删除檔案原有内容。
# 2>> 錯誤追加重定向:把錯誤資訊追加到後面檔案的尾部,不會删除檔案原有内容。
# 說明:
# 1、箭頭的指向代表資料的流向
# 2、數字說明:
# 	1.标準輸入(stdin): 代碼為0。
# 	2.标準正常輸出(stdout):代碼為1。
# 	3.标準錯誤輸出(stderr):代碼為2。
#例子	
xargs -n 2 <hello

echo hello 1>a.txt 2>b.txt
#标準輸出和錯誤輸出到一個檔案寫法 
echo hello >a.txt 2>&1
echo hello &>a.txt
           

其他特殊符号

| 管道

{} 生成字元或數字序列

\ 轉義字元

/ 根目錄

! !+字母 表示調出最近一次以此字母開頭的指令;!! 表示使用最近一次操作;!+數字 表示調出曆史的第n條指令;取反

echo {a..z}
mkdir -p /data/{11,12}/test
find . -type f -name 'hello'
# ! 指令取反
find . -type f ! -name 'hello'
# -o 或 -a 與
find . -type f  -name 'hello' -o -name 'haha'
           

常用快捷鍵

tab 指令補全

ctrl+c 終止目前指令或程式

ctrl+d 退出目前使用者環境,相當于exit,logout

ctrl+l 清屏 相當于clear

ctrl+a 光标到開頭

ctrl+e 光标到結尾

ctrl+u 清理光标前面内容

ctrl+k 清理光标後面内容

ctrl+r 搜尋指令

ctrl+s 挂起

ctrl+q 解除挂起

檢視指令幫助

  1. [指令] --help 适用于一般指令,非内置指令
  2. man [指令] 适用于一般指令
  3. help [指令] 内置指令
  4. info [指令] 适用于一般指令

切換語言環境

LANG=en

繼續閱讀