成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

vimfindbash文件系統(tǒng)

一 vim
 vi visual interface 全屏文本編輯器
 行文本編輯器sed
 全屏:vi/vim  nano
 vim = vi improved
 
 模式:
  編輯模式,命令模式
  輸入模式
  末行模式
 編輯模式--》輸入模式
  i   insert,原地插入
  a append,之后插入
  o 新起一行插入
  I 行首插入
  A 行尾插入
  O 當(dāng)前行上方插入新行
 輸入模式--》編輯模式
  按ESC鍵
 編輯模式--》末行模式
  按  :wq 保存退出
 末行模式--》編輯模式
  按ESC鍵,連按兩次
 
 vim  打開文件如果存在直接編輯,如果不存在會(huì)創(chuàng)建文件,路徑必須正常
 vim +n  file 打開文件并路到第n行
  +/PATTERN
 :q
 :q!
 :wq  強(qiáng)制性寫入文件并退出。即使文件沒有被修改也強(qiáng)制寫入,并更新文件的修改時(shí)間。
 :x  寫入文件并退出。僅當(dāng)文件被修改時(shí)才寫入,并更新文件修改時(shí)間,否則不會(huì)更新文件修改時(shí)間。

創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、成都網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元海安做網(wǎng)站,已為上家服務(wù),為海安各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792

 編輯模式下按ZZ會(huì)保存

 光標(biāo)跳轉(zhuǎn)
  字符間跳轉(zhuǎn)
  h   j    k    l
  左 下 上   右

   每個(gè)跳轉(zhuǎn)字符前面可以加數(shù)字,表示多個(gè)字符跳轉(zhuǎn)
  3h 向左跳3個(gè)字符
  
  單詞間跳轉(zhuǎn)
  w  跳到后一個(gè)單詞的詞首   符號(hào)被當(dāng)作單獨(dú)單詞,_不當(dāng)作單獨(dú)單詞
  e  當(dāng)前或后一單詞的詞尾
  b  當(dāng)前或前一單詞的詞首
  前面加數(shù)字 ,可以多詞跳轉(zhuǎn)
  
  行內(nèi)跳轉(zhuǎn)
  ^ 跳轉(zhuǎn)至行首的第一個(gè)非空白字符
  0 跳轉(zhuǎn)到行首
  $ 跳轉(zhuǎn)到行毛
 
  行間移動(dòng)
  #G  跳轉(zhuǎn)到第#號(hào)
  1G gg 跳轉(zhuǎn)到第一行
  G  跳轉(zhuǎn)到最后一行
 
  句間移動(dòng)
  ) 跳到下一句  以各種符號(hào)分隔
  ( 跳到上一句
 
  段落間移動(dòng)
  }  跳到下一段  以整行空白 分隔
  {  跳到上一段  以整行空白 分隔
  
  編輯命令
  
   字符編輯
    x 刪除光標(biāo)所在處的字符
    #x 刪除光標(biāo)所在處入之后的#個(gè)字符
    xp 把光標(biāo)所在外的字符和后面的字符對(duì)掉
    r 替換所在處的字符
    #r
  刪除命令
  d 刪除,可以跟光標(biāo)跳轉(zhuǎn)一起使用
  d$ 刪除光標(biāo)位置 到行尾的字符
  d^ 刪除光標(biāo)位置 到行首的字符
  d0 刪除光標(biāo)位置 到行首的字符
  
  dw  刪除光標(biāo)到下一詞前的的全部字符(同時(shí)刪除下一詞前的符號(hào))
  de  刪除光標(biāo)到詞尾的全部字符(不刪除下一詞前的符號(hào))
  db 刪除光標(biāo)到詞首的全部字符,如果已經(jīng)在詞首,刪除光標(biāo)之前的整個(gè)詞
  
  dd  刪除光標(biāo)所在一整行
  #dd 刪除光標(biāo)所在行及后面的#行
 所有刪除內(nèi)容被VIM編輯器保存至緩沖區(qū)
  
  粘貼命令
  如果此前復(fù)制或刪除內(nèi)容不是一個(gè)完整行
  p 粘貼到光標(biāo)所在位置的后方
  P 粘貼到光標(biāo)所在位置的前方
  如果此前復(fù)制或刪除內(nèi)容是完整行或多行
  p 粘貼到光標(biāo)所在行的下方
  P  粘貼到光標(biāo)所在行的上方
 
  復(fù)制命令
  y 復(fù)幣
  y$  復(fù)制光標(biāo)位置 到行尾的字符
  y^  復(fù)制光標(biāo)位置 到行首的字符
  y0 復(fù)制光標(biāo)位置 到行首的字符
  ‘=
  yw 復(fù)制光標(biāo)到下一詞前的全部字符
  ye  復(fù)制光標(biāo)到詞尾的全部字符
  yb 復(fù)制光標(biāo)到詞首的全部字符,如果已經(jīng)在詞首,復(fù)制光標(biāo)之前的整個(gè)詞
  
  yy  復(fù)制整行
  #y 復(fù)制#行
  
  改變命令 
  c   刪除--->剪切---->進(jìn)入插入模式
  c$  c^  c0
  ce  cw  cb
  cc
  #c
 
  撤銷命令
  u
  #u
  
  恢復(fù)撤消
  ctrl+r
  .  重復(fù)前一個(gè)操作命令
  
  翻屏操作
  ctrl+f 向后翻一屏
  ctrl+b 向前翻一屏
  ctrl+d 向后半屏
  ctrl+u 向前半屏
  
  vimtutor  vim內(nèi)置教程
 
  末行模式
  地址,定界  后面都可以跟編輯命令 d  y  w  r
   :start,end
    #第#行
   :5             光標(biāo)跳到第5行
   :100         光標(biāo)跳到第100行
   :100d       刪除第100行
   
   #,# 第#行到第#行
   #,+#
   :100,+3d          第100行后面的3行內(nèi)容刪除
    . 當(dāng)前行
    $ 最后一行
    :.,$-1d
   %   1,$ 全文


   :/part1/ 第一次被此模式所匹配的行
   :/umask/
   :#,/umask/
   :/part1/,/part2/
   
  查找功能
  /PATTERN 從光標(biāo)向尾部查找
  ?PATTERN 從光標(biāo)向頭部查找
   n 與命令同方向查找下一個(gè)
   N 與命令反方向查找下一個(gè)
  
  查找替換
  s 在末行模式下 在地址定界范圍內(nèi)完成查找替換操作
  s/要查找的內(nèi)容/替換為的內(nèi)容/修飾符
  查找的內(nèi)容:可使用模式
  替換的肉容:不能使用模式,可以使用后面引用符號(hào)
  &引用要查找的內(nèi)容匹配到的整個(gè)內(nèi)容
  修飾符
   i 忽略大小寫
   g 全局替換
   
  /:用于分隔符,要使用\對(duì)符號(hào)進(jìn)行轉(zhuǎn)義
   
  :3,100s/pid/processid/g
  :%s@/etc/fstab@/tmp/fstab@/g
  :.,+20s/^# //g
 
 
  多文件模式
  vim  file1 file2
  :next     切換到下一個(gè)文件
  :first      切換到第一個(gè)文件
  :last       切換到最后一個(gè)文件
  :prev     切換到前一個(gè)文件
  :wqall     保存全部文件
  :q!all       不保存全部文件 并退出
  
  多文件窗口分割
  vim -o file1 file2    水平分割
   -O     垂直分割
   ctrl+w+箭頭
  單文件窗口分割
   ctrl+w+s    水平分割 按ctrl+w +方向切換窗口
   ctrl+w+v 垂直分割 按ctrl+w +方向切換窗口
 
  定制 vim
  顯示行號(hào)   :set nu
  不顯示行號(hào) :set nonu
  括號(hào)匹配 set sm
     set  no sm
  自動(dòng)縮進(jìn) set ai
     set noai
  高亮搜索 set hlsearch
     set nohlserch
  語(yǔ)法著色 syntax on
     syntax off
  忽略字符大小寫 set ic
      set noic
  :help
  vim 中文手冊(cè)
  vim /etc/vimrc  vim的全局配置文件
   /~/.vimrc   vim的個(gè)人配置文件

 

二 文件查找

locate  文件查找,根據(jù)索引查找,新文件可能找不到 ,查找速度快 ,模糊查找
                 索引的構(gòu)建是在系統(tǒng)空閑時(shí)自動(dòng)進(jìn)行(周期性任務(wù)) ,手動(dòng)更新數(shù)據(jù)庫(kù)(updatedb)

 

find   文件找查,實(shí)時(shí)查找,查找速度慢,精確查找
  find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]
  find [OPTION]...  [查找路徑] [查找條件] [處理動(dòng)作]
  查找路徑 默認(rèn)為當(dāng)前路徑
  查找條件 指定查找標(biāo)準(zhǔn),可以根據(jù)文件名,大小,屬主,類型等,默認(rèn)指出指定路徑下的所有文件
  處理動(dòng)作 對(duì)符合條件的文件做什么操作,默認(rèn)輸出到屏幕

  查找條件
   根據(jù)文件名進(jìn)行查找
    -name 文件名   支持使用glob
     * ? []
    -iname 文件名   不區(qū)分大小寫,支持使用glob
    -regex "PATTERN"  以PATTERN匹配整個(gè)文件路徑字符串,不公公是文件名

   find /tme -user centos 
   find /tmp -user centos -ls
   find /tmp -group centos -ls

  根據(jù)屬主,屬組查找
  -user username
  -group groupname
  -uid useruid
  -gid usergid
  -nouser 沒有屬主的文件
  -nogroup 沒有屬組的文件
  
  根所文件類型查找
  -type  TYPE
   f 普通文件
   d 目錄文件
   l 符號(hào)連接文件 
   b 塊設(shè)備 
   c 字符設(shè)備文件
   p 命令管道 
   s 套接字文件
  find /tmp -type s -ls
  
  組合查找條件
   非條件 -not,!
   與條件 -a
   或條件 -o

  find -type f -a -nouser -ls 
  find /tmp \( -nouser -o -user marion \) -ls
  find /etc ! -name "*.conf"

  !A -o !B  = !(A -a B)
  !A -a !B  = !(A -o B)

 find /etc -not -name "a.conf" -a -not -type f  -ls 
  find /etc -not \( -name "a.conf" -o -not -type f ) -ls

  根據(jù)文件大小查找
  -size [+|-] #UNIT
  單位 k M G
   #UNIT  (+-1,#]
   +UNIT  (#,+OO)
   -UNIT  [0,#-1]
  find /etc -size -3k
  
  以時(shí)間查找
  以天為單位
    -atime    [+|-]n                   accessed  n*24  hours  ago   

    -mtime   [+|-]n                   modified n*24 hours ago

   -ctime      [+|-]n                   changed n*24 hours ago                  

find /etc -mtime -3 -ls

  以分鐘為單位
   -amin    [+|-]n                     accessed  n minutes ago

   -mmim  [+|-]n                    modified n minutes ago

   -cmin     [+|-]n                    changed n minutes ago

   
  根據(jù)權(quán)限
   -perm [/|-] MODE
   MODE 精確權(quán)限匹配
   /MODE 任何一類對(duì)像(u,g,o) 的任何一位權(quán)限符合即可,隱含或條件,三類條件中的任一符合都可以
   -MODE 每一類對(duì)像(u,g,o)指定的每一位權(quán)限必須同時(shí)存大方或符合條件,隱含與條件。

  find ./ -perm /222 -ls 
  find ./ -perm -222 -ls

    處理動(dòng)作
   -print :默認(rèn)顯示到屏幕
   -ls 
   -delete
   -fls /path/to/somefile
   
   -ok  COMMAND{} \;    對(duì)每個(gè)文件執(zhí)行前要用戶確認(rèn)
   -exec  COMANND{} \; 對(duì)文件的執(zhí)行無(wú)須用戶確認(rèn)

  find ./ -perm -222 -exec ls -lh {} \;
  find ./ -perm -003 -exec chmod o-w {} \;
  find ./ -not -perm /111  -ls 
  find ./ -not -perm /111 -exec mv {} {}.old \;

三  bash環(huán)境配置
man bash
 配置文件 
 全局配置文件 /etc/profile    /etc/profile.d/*.sh
                      /etc/bashrc
     
 個(gè)人配置文件 ~/.bash_profile
                      ~/.bashrc
 Profile類
         功用 定義環(huán)境變量
         運(yùn)行的命令或者腳本
 bashrc類
         功用 自定義命令別名
         定義本地變量

pstree
set
env
printenv
export

unset 變量名  取消變量
$變量名    引用變量

''  強(qiáng)制用,變量替換不會(huì)發(fā)生
""  弱引用
``  命令引用
ls -l `which cat`
 
shell登錄類型
 交互式登錄
      通過終端進(jìn)行的登錄
      通過su -l 命令實(shí)現(xiàn)的用戶切換
 非交互式登錄
      圖型界面下打開的命令行窗口
      執(zhí)行腳本
  
配置文件的作用次序 后面的優(yōu)先級(jí)高于前面的優(yōu)先級(jí)
 交互式登錄  :
  /etc/profile-->/etc/profile.d/*.sh-->~/.bash_profile --> ~/.bashrc --> /etc/bashrc
  
 非交互式登錄
  ~/.bashrc--> /etc/bashrc --> /etc/profile.d/*.sh
 
 編輯的配置文件定義生效方法
 重新登錄
 讓當(dāng)前shell進(jìn)程去重新讀到指定的配置文件
  source /path/to/somefile
  ./path/to/somefile
   注意:副作用,每讀取一次會(huì)把配置的內(nèi)容附加到環(huán)境中,造成配置重復(fù)
   

四  Linux文件系統(tǒng)上的特殊權(quán)限
 
 進(jìn)程的安全上下文
  進(jìn)程有屬組(進(jìn)程以哪個(gè)用戶的身份運(yùn)行)
  (1) 用戶是否把某個(gè)可執(zhí)行文件起動(dòng)為進(jìn)程,取決于用戶對(duì)程序文件是否擁有執(zhí)行權(quán)限
  (2) 程序起動(dòng)為進(jìn)程后,此進(jìn)程的屬主為當(dāng)前用戶, 進(jìn)程所屬的組,為發(fā)起者的基本組
  (3) 進(jìn)程擁有的訪問權(quán)限,取決其屬主的訪問權(quán)限
   進(jìn)程的屬主同文件屬主,應(yīng)用文件屬主權(quán)限
   進(jìn)程的屬主屬于文件的屬組,應(yīng)用文件屬組權(quán)限
   其它情況,應(yīng)用其它權(quán)限
 
 SUID 用戶是否把某個(gè)可執(zhí)行文件起動(dòng)為進(jìn)程,取決于用戶對(duì)程序文件是否擁有執(zhí)行權(quán)限
   任何用戶來執(zhí)行該程序?yàn)檫M(jìn)程時(shí),該程序是程序的屬主發(fā)起程序
  chmod u+s /tmp/cat
 注意
  S 屬主原來無(wú)x權(quán)限
  s 屬主原來有x權(quán)限
 
 SGID 默認(rèn)情況下,用戶創(chuàng)建文件其屬組為此用戶所屬的基本組
   一旦某目錄設(shè)置了SGID權(quán)限,則些目錄擁有寫權(quán)限的用戶在此目錄中創(chuàng)建的文件的組為目錄的屬組,不是創(chuàng)建用戶的基本組。  

chmod g+s /tmp/test/

  注意
  S 屬組原來無(wú)x權(quán)限
  s 屬組原來有x權(quán)限
  
 Sticky 對(duì)一個(gè)多個(gè)可寫的目錄,此權(quán)限用于限制每個(gè)用戶僅能刪除屬主為自已的權(quán)限

  chmod o+t file 
  chmod o+t /tmp/test

   SUID SGID STICKY
     0       0         0 

chmod 4777 file

五  Linux磁盤管理 和文件系統(tǒng)

 識(shí)別硬盤 /dev/sd#
     標(biāo)記不同的硬盤設(shè)備 /dev/sd[a-]
     標(biāo)記同一設(shè)備上的不同分區(qū)  /dev/sd[a-z][1-]

        1-4: 主或擴(kuò)展分區(qū)標(biāo)識(shí)
        5+:邏輯分區(qū)標(biāo)識(shí) 
 
 設(shè)備文件 特殊文件
    設(shè)備號(hào)
      major,minor
      major 設(shè)備類型
      minor 同一類型下的不同設(shè)備
   
 塊設(shè)備   標(biāo)識(shí)為b 隨機(jī)訪問設(shè)備
 字符設(shè)備 標(biāo)記為c 線性設(shè)備
 
 GPT
 
 分區(qū),分隔存儲(chǔ)空間為多個(gè)小的空間,每個(gè)空間可獨(dú)立使用文件系統(tǒng)
 
 分區(qū)工具
  fdisk        parted        sfdisk
  
 fdisk 最多支持在一塊硬盤上的15個(gè)分區(qū)

 

    分區(qū)管理子命令

        p: 顯示
        n: 創(chuàng)建
        d: 刪除
        t: 修改分區(qū)ID
        l: 列出所有支持ID類型
        w: 保存退出
        q: 放棄修改并退出
        m: 獲取幫助

    創(chuàng)建完成之后,查看內(nèi)核是否已經(jīng)識(shí)別新的分區(qū):

cat /proc/partitions

有三個(gè)命令可以讓內(nèi)核重讀磁盤分區(qū)表:
    CentOS 5:        partprobe [DEVICE]
    CentOS 6,7:     partx        kpartx

    partx命令:
     partx DEVICE
     partx -a DEVICE
     partx -a -n M:N DEVICE
      M
      M:
      :N

    kpartx命令:
     kpartx -af DEVICE

  partx -a -n 4:5 /dev/sda
  kpartx -af /dev/sda

 文件系統(tǒng)管理
 文件系統(tǒng) VFS   Virtual File System

 Linux              :  ext2  ext3  ext4  btrfs  swap 
 Unix               :  xfs  ffs  ufs  jfs jfs2
 光盤                : ISO9660
 Win                :  fat32/vfat   ntfs
網(wǎng)絡(luò)文件系統(tǒng)   :  net  nfs  cifs
集群文件系統(tǒng)   : ocfs2  gfs2
分布式文件系統(tǒng):  ceph    moosefs   mogilefs  hdfs  gfs   glusterfs
 
 日志型文件系統(tǒng)      ext3

 非日志型文件系統(tǒng)   ext2 
 交換分區(qū)swap
 
 創(chuàng)建文件系統(tǒng)
      在分區(qū)上執(zhí)行格式化(高級(jí)格式化)

      要使用某種文件系統(tǒng),滿足兩個(gè)條件:

          內(nèi)核中 支持此文件系統(tǒng)
          用戶空間 有文件系統(tǒng)管理工具


      創(chuàng)建工具:mkfs (make filesystem)    mkfs -t type DEVICE
      mkfs.ext4
      fsck
      fsck.ext4
      ext系列文件系統(tǒng)的專用管理工具:mke2fs -t  ext2|ext3|ext4 DEVICE
  
      blkid /dev/sda5   顯示文件系統(tǒng)的詳細(xì)信息

 

練習(xí)

6、復(fù)制/etc/grub.cfg配置文件至/tmp目錄,用查找替換命令刪除/tmp/grub.cfg文件中的行首的空白字符;

  cp /etc/grub2.cfg /tmp/
    vim /tmp/grub2.cfg
      :%s@^[[:space:]]@@g    
      :1,$s/^[[:space:]]//g    
      :%s/^[[:space:]]

7、復(fù)制/etc/rc.d/init.d/functions文件至/tmp目錄,用查找替換命令為/tmp/functions的每行開頭為空白字符的行的行首加一個(gè)#; 原有空白字符保留;

  cp /etc/rc.d/init.d/functions /tmp/
    vim /tmp/functions
  :%s@^[[:space:]]@#&@g

8、替換/tmp/functions文件中的/etc/sysconfig/init為/var/log;

  vim /tmp/functions
  :%s@/etc/sysconfig/init@/var/log@g

9、刪除/tmp/functions文件中所以#開頭,且#后面至少跟了一個(gè)空白字符的行的行首#;

    vim /tmp/functions
    :%s@^#\([[:space:]]\+\)@\1@g

10、查找/var目錄屬主為root,且屬組為mail的所有文件;

find /var -user root -a -group mail -ls

11、查找/usr目錄下不屬于root、bin或hadoop的所有文件;

  find /usr -not \( -user root -o -user wang -o user hadoop \) -ls

12、查找/etc目錄下最近一周內(nèi)其內(nèi)容修改過,且屬主不為root或hadoop的所有文件;

find /etc -mtime -7 -a -not \( -user root -o -user hadoop \) -ls

  13、查找當(dāng)前系統(tǒng)上沒有屬主或?qū)俳M,且最近一周內(nèi)曾被訪問過的所有文件;

  find /etc -atime -7 -a -not \( -nouser  -o -nogroup \) -ls

  14、查找/etc目錄下大于20k且類型為普通文件的所有文件;

  find /etc -size +20k -a -type f -ls

  15、查找/etc目錄下所有用戶都沒有寫權(quán)限的文件;

 find /etc -not -perm /222 -ls

  16、查找/etc目錄下至少有一類用戶沒有執(zhí)行權(quán)限的文件;

  find /etc -not -perm -111 -ls

 17、查找/etc/init.d目錄下,所有用戶都有執(zhí)行權(quán)限,且其它用戶擁有寫權(quán)限的文件;

 find /etc/init.d -perm /111 -a -perm /002 -ls

  18、讓普通用戶能使用/tmp/cat去查看/etc/shadow文件;

  cp /bin/cat /tmp

  chmod u+s /tmp/cat 

  su - hadoop

  /test/cat shadow

19、創(chuàng)建目錄/test/data,讓某組內(nèi)普通用戶對(duì)其有寫權(quán)限,且創(chuàng)建的所有文件的屬組為目錄所屬的組;此外,每個(gè)用戶僅能刪除自己的文件;

  mkdir -p /test/data

  chmod g+wrxs,o+wrxt /test/data

 or

  chmod 3777 data

 

當(dāng)前標(biāo)題:vimfindbash文件系統(tǒng)
網(wǎng)頁(yè)鏈接:http://jinyejixie.com/article34/pshhpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站網(wǎng)站設(shè)計(jì)公司、網(wǎng)站內(nèi)鏈、App開發(fā)、響應(yīng)式網(wǎng)站、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
东丽区| 贵港市| 芜湖市| 湖口县| 宁安市| 资溪县| 兖州市| 达州市| 溆浦县| 梧州市| 浙江省| 定边县| 云梦县| 顺平县| 高雄市| 广昌县| 金堂县| 调兵山市| 大新县| 巴林左旗| 铅山县| 宁陕县| 祁门县| 淅川县| 正定县| 石楼县| 巫山县| 德庆县| 平果县| 潮安县| 遂川县| 济源市| 响水县| 康平县| 祁连县| 伊吾县| 阿克| 迭部县| 内丘县| 惠水县| 平乐县|