一 在Linux下删除文件用rm命令,具体用法如下:

rm [选项] 文件

选项说明:

-f    -force      忽略不存在的文件,强制删除,无任何提示

-i    --interactive    进行交互式地删除

-r | -R  --recursive     递归式地删除列出的目录下的所有目录和文件

-v      --verbose    详细显示进行的步骤

 

命令实例:

1、常规删除a.txt文件

[root]# rm a.txt

 

2、强行删除file.log文件

[root]# rm -f file.log

 

 3、删除dirname目录下的所有东西

[root]# rm -R dir dirname

 

4、删除以 -f 开头的文件

[root]# touch ./-f
[root]# ls ./-f
./-f
[root]# rm ./-f

 

或者使用

[root]# touch -- -f 
[root]# ls -- -f 
-f
[root]# rm -- -f   

 

二Linux中怎么使用命令行卸载软件

Linux系统中常用的一个操作就是安装各种软件,因为linux的强大功能也是依赖各种各样的软件来实现的。下面我们就来讲一下在Linux中怎么使用命令行卸载软件。

我们分为两个部分来讲,分别是:

1. 通过Linux自带的包管理器命令卸载软件

2. 通过rpm命令来删除软件

  1. 所有的Linux系统中都带有包管理器命令,比如Ubuntu发行版里的dpkg命令,CentOS/RHEL发行版里带的yum和rpm命令,下面我就以自己比较熟悉的

    CentOS/RHEL系列发行版来讲解,以nginx这个常用的web软件为例。首先我们来看下系统上是否安装了nginx,命令是:

    rpm -qa | grep nginx     #查看是否装了这个nginx软件  软件是否存在 

    结果如下面图中所示:

    如何在Linux中使用命令行卸载软件
  2. 2

    从上面的图中可以看到,确实已经安装好了nginx这个软件,rpm -qa命令的含义是查询所有安装到系统上的软件,而grep是从查询的结果中搜索。如果没有返回结果,那么可以使用yum命令来安装。命令是:

    yum install nginx -y    #安装这个软件 

    安装完成后就能够看到对应的搜索结果,看到搜索结果了以后,说明我们就可以使用自带的包管理器yum和rpm命令来删除这个软件,首先来看yum命令:

    yum erase nginx -y    #卸载这个软件 

    执行结果如下所示:

     
  3. 3

    看到complete的提示说明已经成功删除,此时再执行nginx命令查看软件是否存在,结果如下所示,从图中可以看到提示的意思是没有找到这个命令,说明nginx软件已经被成功卸载。

     
  4. 4

    下面我们继续看rpm命令怎么卸载软件的,rpm命令卸载软件的格式是:

    rpm -e softwarename   #rpm  -e  软件名 

    softwarename 指的是软件名称,比如我们要卸载nginx就是:

    rpm -e nginx   #卸载nginx 

    然后等到命令执行完成,结果如下,从结果中我们可以看到,这个命令更直接了,能成功删除的时候没有任何提示。

     
  5. 5

    同样的,我们通过nginx命令来验证一下,如下面图中所示,可以看到,也提示没有找到这个命令,说明nginx这个软件确实被成功卸载了。至此通过包管理器命令来卸载软件就讲解完毕了。其他发行版的包管理器命令例如dpkg,dnf等都大同小异,都是通过相关参数来删除。读者可以举一反三。

     
    END

 

通过rm命令来删除软件

 
  1.  

    上面讲解的是通过包管理器命令来卸载软件,但是有的时候,可能软件卸载过程中出错,导致软件并没有被完全删除。此时可能是卸载失败的,因此就需要通过rm命令来帮助继续删除软件。同样的以nginx为例,首先我们来看一下安装好的nginx有多少文件,如下面图中所示,查询命令是:

    rpm -ql nginx   #查看软件下边有多少文件

     
  2.  

    从上面的图中,我们可以看到,nginx安装后生成的文件还是比较多的,且主要分为5类,分别是:

    1. 配置文件,保存在/etc/nginx/目录下,以及/etc/目录下

    2. 库文件,保存在/usr/lib,/usr/lib64,/usr/libexec目录下

    3. 命令文件,保存在/usr/sbin目录下

    4. 帮助文档,保存在/usr/share/doc/nginx-1.14.0/和/usr/share/nginx目录下

    5. 日志和缓存文件,保存在/var/log/nginx和/var/cache/nginx目录下

    如下面途中所示:

     
  3.  

    因此我们就需要通过rm命令依次删除这些目录下的文件,命令如下:

    rm -rf /etc/nginx/

    rm -rf /sysconfig/nginx*

    rm -rf /usr/lib/systemd/system/nginx*

    rm -rf /usr/lib64/nginx

    rm -rf /usr/libexec/initscripts/legacy-actions/nginx/

    rm -rf /usr/sbin/nginx*

    rm -rf /usr/share/nginx*

    rm -rf /usr/share/doc/nginx*

    rm -rf /usr/share/man/man8/nginx*

    rm -rf /var/log/nginx/

    rm -rf /var/cache/nginx

    执行命令的过程如下所示:

     
  4.  

    删除完毕后,我们同样通过nginx命令来测试一下,可以看到提示没有找到nginx命令,说明nginx确实已经被删除掉了。但是我们再通过rpm -qa命令查询一下,发现还能查到记录。这是因为并没有通过rpm删除nginx的记录,因此nginx还保存在rpm命令数据库中。但是实际上nginx软件的所有文件已经被删除了。这就是通过rm命令删除或者说卸载软件的一个弊端。除此之外,这个记录还会阻止我们重新按照nginx命令。

     
  5.  

    如下面图中所示,因为我们已经通过rm命令删除了所有的nginx文件,此时想通过yum命令来重新安装,但是可以看到它提示我们nginx已经安装且是最新版本,Nothing to do,表示什么都不做。这也是通过rm命令删除软件的弊端。

     
  6.  

    这个时候如果想安装,就需要通过强制安装或者重新安装命令来执行,如下所示:

    yum reinstall nginx -y  #强制安装 (由于rm 的弊端)

    结果如图二所示,可以看到此时才能重新安装nginx。

     
     
  7.  

 

 

linux 批量删除指定类型文件

上传文件

1. 上传项目包51train-1.0-SNAPSHOT

项目包

2.查看当前项目包下指定文件*.java

[root@jxjy-v30-test4 train]# find . -name "*.java"
  • 1
  • 2

查询结果

3. 删除java文件

[root@jxjy-v30-test4 train]# find . -name "*.java" |xargs rm -rfv
  • 1
  • 2

执行结果

4.执行后查看

[root@jxjy-v30-test4 train]# find . -name "*.java" |wc -l
  • 1
  • 2

执行结果

 

 

利用service+服务名称+start/stop/restart对服务进行启动,停止和重启

(1)一种是可以使用service脚本来调度,如:

service 服务名 start

service 服务名 stop

service 服务名 restart

复制代码
[berry@berry:practice] service vpnagentd status
vpnagentd is stopped 
[berry@berry:practice] sudo service vpnagentd start
Starting up Cisco AnyConnect Secure Mobility Client Agent
[berry@berry:practice] service vpnagentd status
vpnagentd (pid 7000) is running
[berry@berry:practice] service vpnagentd restart
Shutting down Cisco AnyConnect Secure Mobility Client Agent
Starting up Cisco AnyConnect Secure Mobility Client Agent
[berry@berry:practice] service vpnagentd status
vpnagentd (pid 7020) is running