欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

常用Linux Shell進階部分小結

 更新時間:2015年07月28日 12:00:51   投稿:goldensun  
這篇文章主要介紹了常用Linux Shell進階部分小結,歡迎收藏,隨看隨記,需要的朋友可以參考下

如何計算當前目錄下的文件數(shù)和目錄數(shù)
   

  # ls -l * |grep "^-"|wc -l ---- to count files
  
  # ls -l * |grep "^d"|wc -l ----- to count dir

   
    如何只列子目錄?
   

  ls -F | grep /$ 

或者 

alias sub = "ls -F | grep /$"(linux)

   

  ls -l | grep "^d" 

或者

 ls -lL | grep "^d" (Solaris)

   
    如何實現(xiàn)取出文件中特定的行內(nèi)容
   
    如果你只想看文件的前5行,可以使用head命令,
  
    如: 

head -5 /etc/passwd

   
    如果你想查看文件的后10行,可以使用tail命令,
  
    如: 

tail -10 /etc/passwd

   
    你知道怎么查看文件中間一段嗎?你可以使用sed命令
  
    如:

sed -n '5,10p' /etc/passwd 

這樣你就可以只查看文件的第5行到第10行。
   
    如何查找含特定字符串的文件
   
    例如查找當前目錄下含有"the string you want find…"字符串的文件:
   
    

$find . -type f -exec grep "the string you want find…" {} ; -print

   
    如何列出目錄樹
   
    下面的短小的shell程序可以列出目錄樹, 充分利用了sed強大的模式匹配能力。
  
    目錄樹形式如下:
   
  

 .
  
  `--shellp
  
  `--updates
  
  `--wu-ftpd-2.4
  
  | `--doc
  
  | | `--examples
  
  | `--src
  
  | | `--config
  
  | | `--makefiles
  
  | `--support
  
  | | `--makefiles
  
  | | `--man
  
  | `--util
  
  腳本如下:
  
  #!/bin/sh
  
  # dtree: Usage: dtree [any directory]
  
  dir=${1:-.}
  
  (cd $dir; pwd)
  
  find $dir -type d -print | sort -f | sed -e "s,^$1,," -e "/^$/d" -e "s,[^/]*/([^/]*)$,`----1," -e "s,[^/]*/,| ,g"

   
    如何實現(xiàn)取出文件中特定的列內(nèi)容
   
    我們經(jīng)常會遇到需要取出分字段的文件的某些特定字段,例如/etc/password就是通過":"分隔各個字段的。可以通過cut命令來實現(xiàn)。例如,我們希望將系統(tǒng)賬號名保存到特定的文件,就可以:
   
  

 cut -d: -f 1 /etc/passwd >; /tmp/users

   
    -d用來定義分隔符,默認為tab鍵,-f表示需要取得哪個字段。
  
    當然也可以通過cut取得文件中每行中特定的幾個字符,例如:
   

  cut -c3-5 /etc/passwd

   
    就是輸出/etc/passwd文件中每行的第三到第五個字符。
  
    -c 和 -f 參數(shù)可以跟以下子參數(shù):
  
    N 第N個字符或字段
  
    N- 從第一個字符或字段到文件結束
  
    N-M 從第N個到第M個字符或字段
  
    -M 從第一個到第N個字符或字段
   
    在vim中實現(xiàn)批量加密
   
    密碼中還是不能帶空格,不管了,能加密就好,先這么用著。
   

  #!/bin/bash
  
  # Encrypt file with vim
  
  if (test $# -lt 2) then
  
  echo Usage: decrypt password filename
  
  else
  
  vim -e -s -c ":set key=$1" -c ':wq' $2
  
  echo "$2 encrypted."
  
  fi
  
  [weeder@SMTH weeder]$ for file in *.txt ; do encrypt test $file ; done
  
  test2.txt encrypted.
  
  test4.txt encrypted.
  
  test9.txt encrypted.
  
  kick.txt encrypted.
  
  echo "$2 encrypted."
  
  fi
  
  [weeder@SMTH weeder]$ for file in *.txt ; do encrypt test $file ; done
  
  test2.txt encrypted.
  
  test4.txt encrypted.
  
  test9.txt encrypted.
  
  kick.txt encrypted.
  
  too_old.txt encrypted.
  
  too_old_again.txt encrypted.
  
  bg5.txt encrypted.
  
  [weeder@SMTH weeder]$

   
    $@等特定shell變量的含義
   
    在shell腳本的實際編寫中,有一些特殊的變量十分有用:
  
    $# 傳遞到腳本的參數(shù)個數(shù)
  
    $* 以一個單字符串顯示所有向腳本傳遞的參數(shù)。與位置變量不同,此選項參數(shù)可超過9個
  
    $$ 腳本運行的當前進程ID號
  
    $! 后臺運行的最后一個進程的進程ID號
  
    $@ 與$#相同,但是使用時加引號,并在引號中返回每個參數(shù)
  
    $- 顯示shell使用的當前選項,與set命令功能相同
  
    $? 顯示最后命令的退出狀態(tài)。0表示沒有錯誤,其他任何值表明有錯誤。
  
    如何使程序的執(zhí)行結果同時定向到屏幕和文件
   
  

 program_name |tee logfile

   
    這樣程序執(zhí)行期間的顯示都記錄到logfile同時顯示到標準輸出(屏幕)。
   
    如何用sendmail給系統(tǒng)所有用戶送信
   
    首先在aliases文件里面建立一個alias:
   

  alluser: :include:/etc/mail/allusers

   
    并執(zhí)行newaliases使之生效,然后在/etc/mail/allusers里面列出所有用戶,可以使用下面的命令:

  
  awk -F: '$3 >; 100 { print $1 }' /etc/passwd >; /etc/mail/allusers

   
    如何查找某條命令的相關庫文件
   
    在制作自己的發(fā)行版時經(jīng)常需要判斷某條命令需要哪些庫文件的支持,以確保指定的命令在獨立的系統(tǒng)內(nèi)可以可靠的運行。
  
    在Linux環(huán)境下通過ldd命令即可實現(xiàn),在控制臺執(zhí)行:
   

  ldd /bin/ls

   
    即可得到/bin/ls命令的相關庫文件列表。
  
    如何使用host命令獲得更多信息
  
    Host能夠用來查詢域名,然而它可以得到更多的信息。host -t mx linux.com可以查詢出Linux.com的MX記錄,以及處理Mail的Host的名字。Host -l linux.com會返回所有注冊在linux.com下的域名。host -a linux.com則會顯示這個主機的所有域名信息。
   
    如何停止終端多個進程
   
    以下是腳本:
  
    echo "系統(tǒng)當前用戶"
   

  echo "---------------"
  
  who | awk '{print $2}'
  
  echo "---------------"

   
    echo "輸入要殺死終端的終端號:"

  
  read $TTY
  
  kill -9 ${K}=`ps -t $TTY | grep [0-9] | awk '{print $1}'` 

相關文章

  • Linux中10個方便的Bash別名

    Linux中10個方便的Bash別名

    今天小編就為大家分享一篇關于Linux中10個方便的Bash別名,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-09-09
  • Shell中實現(xiàn)整數(shù)自增的幾種方法示例

    Shell中實現(xiàn)整數(shù)自增的幾種方法示例

    Linux Shell中寫循環(huán)時,常常要用到變量的自增,下面這篇文章主要給大家分享了關于Shell中實現(xiàn)整數(shù)變量自增的幾種方法,包括declare -i來聲明、使用let命令、使用(())以及使用expr命令等等方法,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-08-08
  • shell腳本根據(jù)進程查找指定容器的方法

    shell腳本根據(jù)進程查找指定容器的方法

    這篇文章主要介紹了shell腳本根據(jù)進程查找指定容器的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • linux find命令將查找到的文件批量刪除方法

    linux find命令將查找到的文件批量刪除方法

    這篇文章主要介紹了linux find命令將查找到的文件批量刪除,文中給大家補充介紹了Linux中find三種刪除方式,常用于crontab定時任務和shell腳本,需要的朋友可以參考下
    2022-12-12
  • Linux文件查找和解壓縮命令詳解

    Linux文件查找和解壓縮命令詳解

    這篇文章主要介紹了Linux文件查找和解壓縮命令,文件搜索查找包括按照名字搜索,按照文件所屬`主用戶`搜索,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-02-02
  • bash shell和dash shell的區(qū)別詳解

    bash shell和dash shell的區(qū)別詳解

    本文主要介紹了bash shell和dash shell的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • Log4j 日志文件Linux/Mac/Windows通用存放位置設置方法

    Log4j 日志文件Linux/Mac/Windows通用存放位置設置方法

    下面小編就為大家?guī)硪黄狶og4j 日志文件Linux/Mac/Windows通用存放位置設置方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Shell兩種for循環(huán)對應實現(xiàn)方法解析

    Shell兩種for循環(huán)對應實現(xiàn)方法解析

    這篇文章主要介紹了Shell兩種for循環(huán)對應實現(xiàn)方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • Linux下的ctrl常用組合鍵及操作方法

    Linux下的ctrl常用組合鍵及操作方法

    這篇文章主要介紹了Linux下的ctrl常用組合鍵及操作方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • Linux中使用Shell腳本查看Java線程的CPU使用情況

    Linux中使用Shell腳本查看Java線程的CPU使用情況

    這篇文章主要介紹了Linux中使用Shell腳本查看Java線程的CPU使用情況,需要的朋友可以參考下
    2014-06-06

最新評論