檔案查詢及行編輯工具sed練習

2021-10-08 02:20:15 字數 2556 閱讀 9065

1、查詢/etc目錄下大於1m且型別為普通檔案的所有檔案。

[root@wjl ~]# find /etc -size +1m -a -type f -print

/etc/udev/hwdb.bin

/etc/selinux/targeted/policy/policy.29

/etc/brltty/zh-tw.ctb

注:-size選項後面的值決定了查詢條件,即,- #m表示不大於(#-1)m的檔案,#m表示(#-1,#] 範圍內的檔案,+#m表示大於#m的檔案

2、打包/etc/目錄下面所有conf結尾的檔案,壓縮包名稱為當天的時間,並拷貝到/usr/local/src目錄備份。

[root@wjl ~]# mkdir /usr/local/src/`date "+%y-%m-%d-%h-%m-%s"`   #反引號表示執行裡面的命令本身

2020-07-08-21-22-22

[root@wjl ~]# find /etc -name "*conf" -print -exec cp -ar {} /usr/local/src/2020-07-08-21-22-22 \;

.../etc/fonts/conf.d/65-0-lohit-bengali.conf

/etc/fonts/conf.d/59-liberation-sans.conf

/etc/fonts/conf.d/65-0-khmeros-base.conf

/etc/fonts/conf.d/59-liberation-mono.conf

/etc/fonts/conf.d/31-cantarell.conf

/etc/fonts/conf.d/67-lohit-malayalam.conf

/etc/fonts/conf.d/10-scale-bitmap-fonts.conf

/etc/fonts/conf.d/65-0-lohit-kannada.conf

/etc/fonts/conf.d/20-unhint-small-vera.conf

...[root@wjl ~]# tar -czvf 2020-07-08-21-22-22.tar.gz 2020-07-08-21-22-22/

2020-07-08-21-22-22/

...2020-07-08-21-22-22/65-0-lohit-bengali.conf

2020-07-08-21-22-22/59-liberation-sans.conf

2020-07-08-21-22-22/65-0-khmeros-base.conf

2020-07-08-21-22-22/59-liberation-mono.conf

2020-07-08-21-22-22/31-cantarell.conf

...[root@wjl ~]# ls /usr/local/src

2020-07-08-21-22-22  2020-07-08-21-22-22.tar.gz

3、利用sed取出ifconfig命令中本機的ipv4位址。

[root@wjl ~]# ifconfig eno16777736 | sed -n "/\([0-9].\)\[0-9][[:apace:]]\+/p" | tr -s " " : | cut -d':' -f'3'   #首先使用sed命令取出含有ip位址的行,再用tr命令將行中所有的空白字元替換為「:」,最後使用cut按列取出第三欄位即為ip位址

192.168.62.3

4、刪除/etc/fstab檔案中所有以#開頭且後面至少跟乙個空白字元的行的行首的#和空白字元。

[root@wjl ~]# sed "s/^#[[:space:]]\+//" /etc/fstab

#/etc/fstab

created by anaconda on sat nov 30 14:37:40 2019

#accessible filesystems, by reference, are maintained under '/dev/disk'

see man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

#uuid=9163315f-3092-45eb-a672-1dec4bb9403c /boot         xfs      defaults   1 2

/dev/cdrom /media/cdrom iso9660 defaults 0 0

5、處理/etc/fstab路徑,使用sed命令取出其目錄名和基名

[root@wjl ~]# echo "/etc/fstab" | sed "s/\/[^/]*$//"   # \為轉義符,編輯命令查詢替換s///也可表示為 s@@@ 或 s###

/etc

[root@wjl ~]# echo "/etc/fstab" | sed -nr 's#(.*/)(.*)$#\2#p'

fstab

檔案編輯工具vim

一般模式 編輯模式 命令模式 移動游標的位置 按鍵 作用b或向左的方向鍵 游標向左移動乙個字元 l 小寫 或向右的方向鍵 游標向右移動乙個字元 k或向上的方向鍵 游標向上移動乙個字元 j或向下的方向鍵 游標向下移動乙個字元 ctrl b 文字頁面向前翻一頁 ctrl f 文字頁面向後翻一頁 數字0或...

檔案查詢工具

如何在檔案系統上查詢符合條件的檔案?實現工具 find locate 實時查詢 find 非實時查詢 資料庫查詢 locatefind命令用來在指定目錄下查詢檔案。任何位於引數之前的字串都將被視為欲查詢的目錄名。如果使用該命令時,不設定任何引數,則find命令將在當前目錄下查詢子目錄與檔案。並且將查...

Linux 檔案編輯工具 vim

vim 用法 vim 檔案路徑 vim 三個模式 命令模式 用來游標跳轉,即快速調整游標到想要編輯的位置。例如 游標快速移動到指定的行 在命令模式下按1g 或 gg 游標跳到第一行,按 g 游標跳轉到最後一行,按 3gg 游標跳轉到第三行 例如 游標快速移動到行首或行尾 按 end 鍵 游標跳到行尾...