一 在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命令来删除软件
-
所有的Linux系统中都带有包管理器命令,比如Ubuntu发行版里的dpkg命令,CentOS/RHEL发行版里带的yum和rpm命令,下面我就以自己比较熟悉的
CentOS/RHEL系列发行版来讲解,以nginx这个常用的web软件为例。首先我们来看下系统上是否安装了nginx,命令是:
rpm -qa | grep nginx #查看是否装了这个nginx软件 软件是否存在
结果如下面图中所示:
-
从上面的图中可以看到,确实已经安装好了nginx这个软件,rpm -qa命令的含义是查询所有安装到系统上的软件,而grep是从查询的结果中搜索。如果没有返回结果,那么可以使用yum命令来安装。命令是:
yum install nginx -y #安装这个软件
安装完成后就能够看到对应的搜索结果,看到搜索结果了以后,说明我们就可以使用自带的包管理器yum和rpm命令来删除这个软件,首先来看yum命令:
yum erase nginx -y #卸载这个软件
执行结果如下所示:
-
看到complete的提示说明已经成功删除,此时再执行nginx命令查看软件是否存在,结果如下所示,从图中可以看到提示的意思是没有找到这个命令,说明nginx软件已经被成功卸载。
-
下面我们继续看rpm命令怎么卸载软件的,rpm命令卸载软件的格式是:
rpm -e softwarename #rpm -e 软件名
softwarename 指的是软件名称,比如我们要卸载nginx就是:
rpm -e nginx #卸载nginx
然后等到命令执行完成,结果如下,从结果中我们可以看到,这个命令更直接了,能成功删除的时候没有任何提示。
-
同样的,我们通过nginx命令来验证一下,如下面图中所示,可以看到,也提示没有找到这个命令,说明nginx这个软件确实被成功卸载了。至此通过包管理器命令来卸载软件就讲解完毕了。其他发行版的包管理器命令例如dpkg,dnf等都大同小异,都是通过相关参数来删除。读者可以举一反三。
END
通过rm命令来删除软件
-
上面讲解的是通过包管理器命令来卸载软件,但是有的时候,可能软件卸载过程中出错,导致软件并没有被完全删除。此时可能是卸载失败的,因此就需要通过rm命令来帮助继续删除软件。同样的以nginx为例,首先我们来看一下安装好的nginx有多少文件,如下面图中所示,查询命令是:
rpm -ql nginx #查看软件下边有多少文件
-
从上面的图中,我们可以看到,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目录下
如下面途中所示:
-
因此我们就需要通过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
执行命令的过程如下所示:
-
删除完毕后,我们同样通过nginx命令来测试一下,可以看到提示没有找到nginx命令,说明nginx确实已经被删除掉了。但是我们再通过rpm -qa命令查询一下,发现还能查到记录。这是因为并没有通过rpm删除nginx的记录,因此nginx还保存在rpm命令数据库中。但是实际上nginx软件的所有文件已经被删除了。这就是通过rm命令删除或者说卸载软件的一个弊端。除此之外,这个记录还会阻止我们重新按照nginx命令。
-
如下面图中所示,因为我们已经通过rm命令删除了所有的nginx文件,此时想通过yum命令来重新安装,但是可以看到它提示我们nginx已经安装且是最新版本,Nothing to do,表示什么都不做。这也是通过rm命令删除软件的弊端。
-
这个时候如果想安装,就需要通过强制安装或者重新安装命令来执行,如下所示:
yum reinstall nginx -y #强制安装 (由于rm 的弊端)
结果如图二所示,可以看到此时才能重新安装nginx。
-
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