復制文件
copy的縮寫cp
格式:cp [參數] [被復制文件的路徑] [復制到的新路徑]
參數(-r:遞歸復制 -a:保證某些屬性不變)
案例:
1、將/root目錄下anaconda-ks.cfg復制到/tmp目錄
[root@localhost ~]# cp /root/anaconda-ks.cfg /tmp
2、將/root目錄下的test文件夾及其內部的文件復制到/tmp中
[root@localhost ~]# cp -r /root/test /tmp
補充:在linux中,文件夾是不可以直接復制的
3、將/etc/hosts和/etc/resolv.conf復制到/tmp目錄中
[root@localhost ~]# cp /etc/hosts /etc/resolv.conf /tmp
注意:在linux沒有提示就是最好的結果
補充:Esc + . :上一條命令的最后一個元素
ls -l 等價於 ll
[root@localhost ~]# ls 1.txt anaconda-ks.cfg test [root@localhost ~]# touch test/1.txt [root@localhost ~]# echo "Hello World" > test/1.txt [root@localhost ~]# echo "Hello China" >> test/1.txt [root@localhost ~]# cat test/1.txt Hello World Hello China
知識儲備:
linux中的鏈接相當於快捷方式
stat:查看文件詳細屬性
[root@localhost ~]# ll /root/ total 4 -rw-r--r--. 1 root root 0 Dec 10 10:52 1.txt -rw-------. 1 root root 1687 Dec 8 17:03 anaconda-ks.cfg drwxr-xr-x. 2 root root 19 Dec 10 17:01 test [root@localhost ~]# stat /root/test/ File: ‘/root/test/’ Size: 19 Blocks: 0 IO Block: 4096 directory Device: fd00h/64768d Inode: 18093233 Links: 2 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Context: unconfined_u:object_r:admin_home_t:s0 Access: 2021-12-10 17:07:44.994235905 +0800 Modify: 2021-12-10 17:01:29.406216165 +0800 Change: 2021-12-10 17:01:29.406216165 +0800 Birth: - [root@localhost ~]# stat /tmp/test/ File: ‘/tmp/test/’ Size: 19 Blocks: 0 IO Block: 4096 directory Device: fd00h/64768d Inode: 18093271 Links: 2 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Context: unconfined_u:object_r:user_tmp_t:s0 Access: 2021-12-10 17:14:17.688256544 +0800 Modify: 2021-12-10 17:07:44.994235905 +0800 Change: 2021-12-10 17:07:44.994235905 +0800 Birth: - [root@localhost ~]# cp -a /root/test/ /opt/ [root@localhost ~]# stat /opt/test/ File: ‘/opt/test/’ Size: 19 Blocks: 0 IO Block: 4096 directory Device: fd00h/64768d Inode: 33666795 Links: 2 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Context: unconfined_u:object_r:admin_home_t:s0 Access: 2021-12-10 17:07:44.994235905 +0800 Modify: 2021-12-10 17:01:29.406216165 +0800 Change: 2021-12-10 17:20:57.442277555 +0800 Birth: -
移動文件
移動文件相當於剪切
格式:mv [移動文件的原路徑] [移動文件的新路徑]
案例:
1、將/root目錄下的1.txt移動到/opt目錄中
[root@localhost ~]# mv /root/1.txt /opt
# 移動文件夾
[root@localhost ~]# mv test/ /mnt/
刪除文件
刪除文件有兩種方式:
1、物理刪除:直接刪除文件
2、邏輯刪除:將文件隱藏,沒有直接刪除
rm 是一個物理刪除的命令
格式:rm [參數] [需要刪除文件的路徑]
參數:
-f:不提示直接刪除
-r:遞歸刪除目錄及其內容
-i:每次移除前提示
案例:
1、將/root目錄下的1.txt刪除
[root@localhost ~]# rm 1.txt
[root@localhost ~]# rm -f 2.txt
2、刪除/root目錄下的test文件夾及其內部所有的文件
[root@localhost ~]# rm -r /root/test/
[root@localhost ~]# rm -rf /root/test
補充:
在linux系統中,不能夠直接刪除文件夾
linux系統中禁止使用:rm -rf /*
解決rm命令誤操作
將rm命令改一個名稱
知識儲備:
查看命令存放路徑:which [命令]
[root@localhost ~]# which rm alias rm='rm -i' /usr/bin/rm [root@localhost ~]# cd /usr/bin [root@localhost bin]# ls
系統別名
alias
格式:
alias xxx='命令'
alias:查看系統別名
[root@localhost ~]# alias alias cp='cp -i' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias mv='mv -i' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' [root@localhost ~]#
alias rm='xxx':設置系統別名
不適用別名,就在命令之前增加\
[root@localhost ~]# \rm 1.txt
vi/vim編輯器
vim是vi的升級版編輯器
1、安裝vim
yum install vim -y
2、打開編輯文件
[root@localhost ~]# vim 1.txt
3、vi編輯器中有三種模式(命令模式,末行模式,編輯模式)
4、進入編輯模式
i:在光標之前輸入
o:在光標處新創建一行
a:在光標之后輸入
5、保存並退出
1.進入末行模式
2.操作(:q!強制退出)
w:保存
q:退出
!:強制(編寫的內容全部放棄)
6、解決vim編輯異常
1.刪除.1.txt.swp
2.繼續編輯(-r)
[root@localhost ~]# vim -r 1.txt
3.放棄編輯(-n)
[root@localhost ~]# vim -n 1.txt
7、光標快速移動快捷方式
快速切換光標到底行:G
快速切換光標到首行:gg
快速跳轉到行首:0
快速跳轉到行尾:$
快速跳轉到指定行:(1.進入末行模式 2.輸入跳轉的行數 3.回車)
快速復制文本內容信息:(yy nyy:向下復制n行)
快速粘貼文本內容:(p:在光標的下一行粘貼 P:在光標的上一行粘貼)
刪除文本內容:(dd:刪除光標所在行 ndd:向下刪除n行)
回撤:u
撤回回撤:ctrl+r
顯示行號:(1.進入末行模式 2.輸入set nu 3.回車)
取消行號:(1.進入末行模式 2.輸入set nonu 3.回車)
搜索內容:(1.進入命令模式 2.輸入/ 3.輸入搜索的內容 4.回車)n:下一個 N:上一個(:setic:忽略大小寫)
可視化編輯:(1.ctrl+v 2.編輯:shift+i 3.按Esc鍵退出即可)
1.進入末行模式
2.輸入要操作的指定行數
1,n 指定的是操作1到n行,%代表的是文本的最后一行的行號
s/被替換的內容/替換的新內容/g
:1,10 s/\(.*\)/# \1/g
進入編輯模式:aio
知識儲備
實時監控文件內容變化:tail -f [要監控的文件]
演示vim編輯異常
1、查看vim進程
[root@localhost ~]# ps -ef | grep vim
2、kill vim進程
[root@localhost ~]# kill -9 2088
[root@localhost ~]# ps -ef | grep vim root 2088 1795 0 19:40 pts/0 00:00:00 vim 1.txt root 2107 2089 0 19:41 pts/1 00:00:00 grep --color=auto vim [root@localhost ~]# kill -9 2088
批量復制
[root@localhost ~]# while true;do echo "Hello World" >> 1.txt;done