Linux系統(tǒng)文件管理——常用命令day4

文件管理

一、文件的復(fù)制(cp)

1.將當(dāng)前目錄下的file文件,復(fù)制到/tmp/目錄下,并改名為file_copy

? ? ? ? [root@oldboy ~]# cp file /tmp/file_copy

? ? ? ? cp: overwrite ‘/tmp/file_copy’? y

? ? ? ? [root@oldboy ~]# ls /tmp/file_copy

? ? ? ? /tmp/file_copy

2.將file1復(fù)制到/tmp目錄下

? ? ? ? [root@oldboy ~]# cp file1 /tmp/

? ? ? ? [root@oldboy ~]# cp file1 /tmp/file1? ? #此命令不常用

3.在拷貝的文件過(guò)程中

(1)如何保持文件原有的屬性不發(fā)生變化

? ? #未修改前

? ? -rw-r--r--. 1 root root ?0 Jul 29 10:07 file

? ? #第一次修改?

? ? -rwxrwxrwx. 1 root root ?0 Jul 29 10:03 file?

? ? #第二次修改?

? ? -rwxrwxrwx. 1 adm adm 0 Jul 29 10:03 file

(2)文件權(quán)限和身份都發(fā)生了變化

? ? ? ? ?[root@oldboy ~]# cp file /tmp/

? ? ? ? ?cp: overwrite ‘/tmp/file’? y

? ? ? ? ?[root@oldboy ~]# ll /tmp/file

? ? ? ? ?-rw-r--r--. 1 root root 0 Jul 29 15:24 /tmp/file

(3)在拷貝過(guò)程中加上-p參數(shù),保存文件的原有屬性

? ? ? ? ?[root@oldboy ~]# cp -p file /tmp/

? ? ? ? ?cp: overwrite ‘/tmp/file’? y

? ? ? ? ?[root@oldboy ~]# ll /tmp/file

? ? ? ? ?-rw-r--r--. 1 root root 0 Jul 29 10:03 /tmp/file

4.如何拷貝一個(gè)目錄,且目錄中有很多的子文件。(-r表示遞歸復(fù)制)

? ? ? ? ?[root@oldboy ~]# cp /etc/ /tmp/

? ? ? ? ?cp: omitting directory ‘/etc/’

? ? ? ? ?[root@oldboy ~]# cp /etc/ /tmp/ -r

? ? ? ? ?cp: overwrite ‘/tmp/etc/fstab’? y

? ? ? ? ?cp: overwrite ‘/tmp/etc/crypttab’? y

? ? ? ? ?cp: overwrite ‘/tmp/etc/mtab’? y

5.拷貝不同路徑下的不同文件至同一個(gè)目錄下(-v是顯示詳細(xì)過(guò)程)

? ? ? ? ?[root@oldboy ~]# cp file1 /etc/hostname /etc/hosts /opt/ -v

? ? ? ? ?‘file1’ -> ‘/opt/file1’

? ? ? ? ?‘/etc/hostname’ -> ‘/opt/hostname’

? ? ? ? ?‘/etc/hosts’ -> ‘/opt/hosts’

? ? ? ? ? [root@oldboy ~]#

6.拷貝不同路徑下不同文件+不同目錄至同一個(gè)位置

? ? ? ? ? [root@oldboy ~]# cp -rp file1 oldboy1/ file /etc/ /mnt/ /opt/?

? ? ? ? ? [root@oldboyedu ~]# ls /opt/?

? ? ? ? ? etc file file1 mnt oldboy1

7.在復(fù)制的過(guò)程中頻繁出現(xiàn)重復(fù)性操作,提示確認(rèn)操作

? ? ? ? ? [root@oldboy ~]# \cp -r /etc/ /opt/

? ? ? ? ? [root@oldboy ~]# /bin/cp -r /etc/ /opt/

? ? ? ? ? 加上\能夠取消重復(fù)性工作

? ? ? ? ? cp: overwrite ‘/opt/etc/fstab’? y

? ? ? ? ? cp: overwrite ‘/opt/etc/crypttab’? ……

8.擴(kuò)展

? ? ? ? ?[root@oldboy ~]# cp {file1,file5-bak} -v

? ? ? ? ?‘file1’ -> ‘file5-bak’

? ? ? ? ?‘file1’ -> ‘file5-bak’[root@oldboy ~]# cp /etc/sysconfig/network-? ? ? ? ?scripts/{ifcfg-ens32,ifcfg-ens-32-bak}

注:-r? 表示遞歸復(fù)制

? ? ? ?-v 顯示詳?

? ? ? ?-p 保留源文件或目錄的詳細(xì)過(guò)程


二、文件管理——查看文件內(nèi)容

1.cat查看文件內(nèi)容

? ? ? ? ?[root@oldboy ~]# cp /etc/passwd ./pass

? ? ? ? ?cp: overwrite ‘./pass’? y

? ? ? ? ?[root@oldboy ~]# cat pass? ? ? ?#查看文件的所有內(nèi)容,從頭至尾

? ? ? ? ?[root@oldboy ~]# cat -n pass? ?#查看文件有多少行時(shí)用-n

? ? ? ? ?[root@oldboy ~]# cat -A pass? ?#查看文件中存在的特殊字符,比如tab鍵

2.less和more

(1)less

? ? ? ? ?[root@oldboy ~]# less /etc/services? ? #查看/etc/services下的所有內(nèi)容,? ? 使用光標(biāo)上下翻動(dòng),空格鍵進(jìn)行翻頁(yè),q退出

(2)?more

? ? ? ? ?[root@oldboy ~]# more /etc/services? #查看/etc/services下的所有內(nèi)容,使用回車(chē)鄉(xiāng)下移動(dòng),空格鍵進(jìn)行翻頁(yè),q退出

3.head和tail

(1)head? ??

? ? ? ? ?[root@oldboy ~]# head pass? ? ? ?#查看文件頭部?jī)?nèi)容,默認(rèn)為前10行

? ? ? ? ?[root@oldboy ~]# head -n pass? ?#查看文件的前n行內(nèi)容。-n為指定查看那幾行的內(nèi)容。

(2)tail

? ? ? ? ? [root@oldboy ~]# tail pass? ? ? ? #查看文件尾部的內(nèi)容,默認(rèn)10行

? ? ? ? ? [root@oldboy ~]#tail -f /var/log/messages #查看尾部的變化

4.grep(過(guò)濾|匹配文件的內(nèi)容)

(1)過(guò)濾出pass文件中的root相關(guān)的行

? ? ? ? ? [root@oldboy ~]# grep "root" pass

? ? ? ? ? root:x:0:0:root:/root:/bin/bash

? ? ? ? ? operator:x:11:0:operator:/root:/sbin/nologin

(2)過(guò)濾pass文件中,匹配以root開(kāi)頭的行

? ? ? ? ? [root@oldboy ~]# grep "^root" pass

? ? ? ? ? root:x:0:0:root:/root:/bin/bash

(3)過(guò)濾pass文件中,匹配以bash結(jié)尾的行

? ? ? ? ? [root@oldboy ~]# grep "bash$" pass

? ? ? ? ? root:x:0:0:root:/root:/bin/bash

(4)顯示行號(hào)

? ? ? ? ? [root@oldboy ~]# grep -n "bash$" pass

? ? ? ? ? 1:root:x:0:0:root:/root:/bin/bash

(5)擴(kuò)展

匹配文件中/var/log/secure 文件中Failed字符串,并打印下2行

? ? ? ? ? [root@oldboy ~]#grep -n -A 2 "Failed" /var/log/secure

匹配文件中/var/log/secure文件中Falied字符串,并打印上2行

? ? ? ? ? [root@oldboy ~]#grep -n -B 2 "Failed" /var/log/secure

匹配文件中/var/log/secure文件中Failed字符串,并打印上下各2行

? ? ? ? ? [root@oldboy ~]#grep -n -C 2 "Failed" /var/log/secure

(6)過(guò)濾出文件包含ftp的行

? ? ? ? ? [root@oldboy ~]# grep "ftp" pass

? ? ? ? ? ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

(7)過(guò)濾除了ftp的行,其他的全部顯示

輸入grep -v "ftp" pass即顯示除ftp以外的所有內(nèi)容

(8)忽略大小寫(xiě)的方式

? ? ? ? ?[root@oldboy ~]# grep -i "ftp" pass

? ? ? ? ?ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

(9)過(guò)濾pass文件中以sync結(jié)尾中,或者ftp相關(guān)的行,打印出來(lái),同時(shí)不區(qū)分大小寫(xiě)

? ? ? ? ?[root@oldboy ~]# grep -Ei "sync$|ftp" pass

? ? ? ? ?sync:x:5:0:sync:/sbin:/bin/sync

? ? ? ? ?ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容