每日一练(linux)第三天

184 阅读3分钟

「这是我参与11月更文挑战的第6天,活动详情查看:2021最后一次更文挑战

运维的规范操作:

01.所有文件编辑修改时,请用cp命令进行备份

   [root@fu ~]# cp /data/oldboy.txt /data/oldboy.txt.bak
   [root@fu  ~]# ls -l /data/
   total 8
   drwxr-xr-x. 2 root root 4096 Jun 20 06:28 data
   -rw-r--r--. 1 root root   34 Jun 20 13:47 error.txt
   -rw-r--r--. 1 root root    0 Jun 20 14:43 info.log
   -rw-r--r--. 1 root root    0 Jun 20 12:06 oldboy.txt
   -rw-r--r--. 1 root root    0 Jun 20 17:48 oldboy.txt.bak
   -rw-r--r--. 1 root root    0 Jun 20 13:47 right.txt

02.在移动数据之前,先确保目录路径是否存在目录信息

   [root@fu  ~]# #mv /data/ /root/
   [root@fu  ~]# ls -ld /root/data/
   drwxr-xr-x. 3 root root 4096 Jun 20 17:48 /root/data/
  1. 进入/root目录下的data目录,删除oldboy.txt文件 第一种方式:利用rm命令删除

  remove 移除 ==rm移除命令
   rm 要移除的文件或目录信息
   移除一个文件操作:
   [root@fu  ~]# cd /root/data/
   [root@fu  data]# pwd
   /root/data
   [root@fu  data]# rm oldboy.txt
   rm: remove regular empty file `oldboy.txt'? y
   
   移除一个目录操作:
   移除目录前做好进行备份
   [root@fu  data]# ls
   data  error.txt  info.log  oldboy.txt.bak  right.txt
   [root@fu  data]# cp oldboy.txt.bak oldboy.txt
   [root@fu  data]# echo oldboy123 >oldboy.txt
   [root@fu  data]# cp /root/data/ /tmp/
   cp: omitting directory `/root/data/'
   [root@fu  data]# cp -a /root/data/ /tmp/
   cp: overwrite `/tmp/data/oldboy.txt'? y
   cp: overwrite `/tmp/data/info.log'? y
   cp: overwrite `/tmp/data/error.txt'? y
   cp: overwrite `/tmp/data/right.txt'? y
   
   
   开始移除目录   (rm 只能移除单个文件  -r 可以移除目录  -f 强制删除)
   [root@fu  data]# rm /root/data
   rm: cannot remove `/root/data': Is a directory
   [root@fu  data]# rm -r /root/data/
   rm: descend into directory `/root/data'? n
   [root@fu  data]# rm -rf /root/data/
   [root@fu  data]# ls -ld /root/data/
   ls: cannot access /root/data/: No such file or directory

   删根时,会有自我保护功能(centos6.9)
   [root@fu  data]# rm  / -rf
   rm: it is dangerous to operate recursively on `/'
   rm: use --no-preserve-root to override this failsafe

第二种删除数据的方式:精确删除多个文件数据信息

 第一里程: 找出相应的文件数据
   find 查找数据信息命令
   find 在哪找东西 找的东西的类型  找的东西的名称
   [root@fu  data]# find /root/data/ -type f -name "*.txt"
   /root/data/oldboy.txt
   /root/data/error.txt
   /root/data/right.txt
   
  
   第二里程:将数据进行删除
   [root@fu  data]# find /root/data/ -type f -name "*.txt"
   /root/data/oldboy.txt
   /root/data/error.txt
   /root/data/right.txt

   [root@fu  data]# find /root/data/ -type f -name "*.txt"|xargs ls -l (ls -l 可以换成rm-r)
   -rw-r--r--. 1 root root 34 Jun 20 13:47 /root/data/error.txt
   -rw-r--r--. 1 root root 10 Jun 20 18:39 /root/data/oldboy.txt
   -rw-r--r--. 1 root root  0 Jun 20 13:47 /root/data/right.txt
   
   补充说明:管道后面的命令,不识别命令别名功能
   [root@fu  data]# ls -l
   total 4
   -rw-r--r--. 1 root root 20 Jun 20 21:17 test.txt
   [root@fu  data]# find ./ -type f -name "test.txt"
   ./test.txt
   [root@fu  data]# find ./ -type f -name "test.txt"|xargs rm
   [root@fu  data]# ll
   total 0

第三种删除数据的方式:精确删除多个文件数据信息

第一里程:找出相应的文件数据
   find 查找数据信息命令
   find 在哪找东西 找的东西的类型  找的东西的名称
   [root@fu  ~]# find /root/data/ -type f -name "*.txt"
   /root/data/oldboy.txt
   /root/data/error.txt
   /root/data/right.txt
   
   第二里程: 将数据进行删除(``反引号 == $())
   ps:一切皆文件
   反引号作用: 在命令中嵌入一个命令
   [root@fu  ~]# which cat
   /bin/cat
   [root@fu  ~]# /bin/cat /etc/hosts
   127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
   ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
   [root@fu  ~]# `which cat` /etc/hosts
   127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
   ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
   [root@fu  ~]# $(which cat) /etc/hosts
   127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
   ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
   
   [root@fu  ~]# ls -l $(find /root/data/ -type f -name "*.txt")
   -rw-r--r--. 1 root root 34 Jun 20 13:47 /root/data/error.txt
   -rw-r--r--. 1 root root 10 Jun 20 18:39 /root/data/oldboy.txt
   -rw-r--r--. 1 root root  0 Jun 20 13:47 /root/data/right.txt