MSYS2 中pacman安装所有软件包命令:

pacman -Sl | awk '{cmd="pacman -S --needed --noconfirm "$2;system(cmd)}'

pacman

用法:  pacman <操作> [...]
操作:
pacman {-h --help}
pacman {-V --version}
pacman {-D --database} <选项> <软件包>
pacman {-F --files} [选项] [软件包]
pacman {-Q --query} [选项] [软件包]
pacman {-R --remove} [选项] <软件包>
pacman {-S --sync} [选项] [软件包]
pacman {-T --deptest} [选项] [软件包]
pacman {-U --upgrade} [选项] <文件>

pacman -D

用法:  pacman {-D --database} <选项> <软件包>
选项:
-b, --dbpath <路径> 指定另外的数据库位置
-k, --check 检查本地数据库有效性 (-kk 以同步数据库)
-q, --quiet 不显示成功消息的输出
-r, --root <路径> 指定另外的安装根目录
-v, --verbose 显示详细信息
--arch <架构> 设定另外的架构
--asdeps 标记为非明确指定安装的软件包
--asexplicit 标记为明确指定安装的软件包
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--logfile <路径> 指定另外的日志文件
--noconfirm 不询问确认
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

pacman -F

  -b, --dbpath <路径>  指定另外的数据库位置
-l, --list 列出被查询软件包的内容
-o, --owns <文件> 查询哪个软件包拥有<文件>
-q, --quiet 在查询或搜索时显示较少的信息
-r, --root <路径> 指定另外的安装根目录
-s, --search <文件> 搜索符合指定字符串的软件包文件名
-v, --verbose 显示详细信息
-x, --regex 启用正则表达式进行搜索
-y, --refresh 从服务器下载新的软件包数据库
(-yy 强制更新软件包数据库)
--arch <架构> 设定另外的架构
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--logfile <路径> 指定另外的日志文件
--machinereadable
产生机器可读输出
--noconfirm 不询问确认
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

pacman -Q

用法:  pacman {-Q --query} [选项] [软件包]
选项:
-b, --dbpath <路径> 指定另外的数据库位置
-c, --changelog 查看某软件包的更新日志
-d, --deps 列出所有作为依赖关系安装的软件包 [过滤器]
-e, --explicit 列出所有单独指定安装的软件包 [过滤器]
-g, --groups 查看某软件包组所属的所有软件包
-i, --info 查看软件包信息 (-ii 查看备份文件)
-k, --check 检查软件包的文件存在(-kk检查文件属性)
-l, --list 列出被查询软件包的内容
-m, --foreign 列出没有在同步数据库时找到的已安装软件包 [过滤器]
-n, --native 列出只在(同步)数据库中的已安装软件包 [过滤]
-o, --owns <文件> 查询哪个软件包拥有<文件>
-p, --file <软件包> 从某个软件包而不是数据库查询
-q, --quiet 在查询或搜索时显示较少的信息
-r, --root <路径> 指定另外的安装根目录
-s, --search <regex> 搜寻符合指定字符串的已安装本地的软件包
-t, --unrequired 列出不被任何软件包(可选)要求的软件包(-tt 忽略可选依赖) [过滤器]
-u, --upgrades 列出所有可升级的软件包 [过滤器]
-v, --verbose 显示详细信息
--arch <架构> 设定另外的架构
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--logfile <路径> 指定另外的日志文件
--noconfirm 不询问确认
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

pacman -R

用法:  pacman {-R --remove} [选项] <软件包>
选项:
-b, --dbpath <路径> 指定另外的数据库位置
-c, --cascade 删除软件包及所有依赖于此的软件包
-d, --nodeps 跳过依赖关系的版本检查 (-dd 跳过所有检查)
-n, --nosave 删除配置文件
-p, --print 打印目标而不是执行操作
-r, --root <路径> 指定另外的安装根目录
-s, --recursive 删除不需要的依赖关系
(-ss 包括单独指定安装的依赖关系)
-u, --unneeded 删除不需要的软件包
-v, --verbose 显示详细信息
--arch <架构> 设定另外的架构
--assume-installed <package=version>
添加一个虚拟包用以满足依赖要求
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--dbonly 仅修改数据库条目,而非软件包文件
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--logfile <路径> 指定另外的日志文件
--noconfirm 不询问确认
--noprogressbar 下载文件时不显示进度条
--noscriptlet 不执行安装小脚本
--print-format <字符串>
指定如何打印目标
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

pacman -S

用法:  pacman {-S --sync} [选项] [软件包]
选项:
-b, --dbpath <路径> 指定另外的数据库位置
-c, --clean 从缓存目录中删除旧软件包 (-cc 清除所有)
-d, --nodeps 跳过依赖关系的版本检查 (-dd 跳过所有检查)
-g, --groups 查看某软件包组所属的所有软件包
(-gg 查看所有软件包组和所属于它们的软件包)
-i, --info 查看软件包信息 (-ii 查看更多信息)
-l, --list <repo> 查看在该软件库中的软件包清单
-p, --print 打印目标而不是执行操作
-q, --quiet 在查询或搜索时显示较少的信息
-r, --root <路径> 指定另外的安装根目录
-s, --search <正则表达式> 按照指定字符串查询远端软件库
-u, --sysupgrade 升级所有已安装的软件包 (-uu 可启用降级)
-v, --verbose 显示详细信息
-w, --downloadonly 下载但不安装/升级软件包
-y, --refresh 从服务器下载新的软件包数据库
(-yy 强制更新软件包数据库)
--arch <架构> 设定另外的架构
--asdeps 作为非单独指定安装的软件包安装
--asexplicit 作为单独指定安装的软件包安装
--assume-installed <package=version>
添加一个虚拟包用以满足依赖要求
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--dbonly 仅修改数据库条目,而非软件包文件
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--ignore <软件包> 升级时忽略某个软件包 (可多次使用)
--ignoregroup <软件包组>
升级时忽略某个软件包组 (可多次使用)
--logfile <路径> 指定另外的日志文件
--needed 不重新安装已是最新的软件包
--noconfirm 不询问确认
--noprogressbar 下载文件时不显示进度条
--noscriptlet 不执行安装小脚本
--overwrite <path>
覆盖冲突的文件(可以使用多次)
--print-format <字符串>
指定如何打印目标
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

pacman -T

用法:  pacman {-T --deptest} [选项] [软件包]
选项:
-b, --dbpath <路径> 指定另外的数据库位置
-r, --root <路径> 指定另外的安装根目录
-v, --verbose 显示详细信息
--arch <架构> 设定另外的架构
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--logfile <路径> 指定另外的日志文件
--noconfirm 不询问确认
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

pacman -U

用法:  pacman {-U --upgrade} [选项] <文件>
选项:
-b, --dbpath <路径> 指定另外的数据库位置
-d, --nodeps 跳过依赖关系的版本检查 (-dd 跳过所有检查)
-p, --print 打印目标而不是执行操作
-r, --root <路径> 指定另外的安装根目录
-v, --verbose 显示详细信息
--arch <架构> 设定另外的架构
--asdeps 作为非单独指定安装的软件包安装
--asexplicit 作为单独指定安装的软件包安装
--assume-installed <package=version>
添加一个虚拟包用以满足依赖要求
--cachedir <dir> 指定另外的软件包缓存位置
--color <when> 彩色化输出
--config <路径> 指定另外的配置文件
--confirm 总是询问确认
--dbonly 仅修改数据库条目,而非软件包文件
--debug 显示调试信息
--disable-download-timeout
下载时用宽松的超时
--gpgdir <路径> 设定 GnuPG 的其他主目录
--hookdir <目录> 指定另外的钩子位置
--ignore <软件包> 升级时忽略某个软件包 (可多次使用)
--ignoregroup <软件包组>
升级时忽略某个软件包组 (可多次使用)
--logfile <路径> 指定另外的日志文件
--needed 不重新安装已是最新的软件包
--noconfirm 不询问确认
--noprogressbar 下载文件时不显示进度条
--noscriptlet 不执行安装小脚本
--overwrite <path>
覆盖冲突的文件(可以使用多次)
--print-format <字符串>
指定如何打印目标
--sysroot 在一个已挂载的 guest 系统操作(仅 root)

更新系统:

pacman -Syu

安装包:

pacman -S 包名:例如,执行 pacman -S firefox 将安装 Firefox。你也可以同时安装多个包,

只需以空格分隔包名即可。

pacman -S $(pacman -Qq | grep -v “$(pacman -Qmq)”) 重新安装你系统中所有的软件包(仓库中已有的)

pacman -Sy 包名:与上面命令不同的是,该命令将在同步包数据库后再执行安装。

pacman -Sv 包名:在显示一些操作信息后执行安装。

pacman -U:安装本地包,其扩展名为 pkg.tar.gz。

pacman -U http://www.example.com/repo/example.pkg.tar.xz 安装一个远程包(不在 pacman 配置的源里面)

删除包:

pacman -R 包名:该命令将只删除包,保留其全部已经安装的依赖关系

pacman -Rs 包名:在删除包的同时,删除其所有没有被其他已安装软件包使用的依赖关系

pacman -Rs $(pacman -Qtdq) 递归删除孤立软件包

pacman -Rsc 包名:在删除包的同时,删除所有依赖这个软件包的程序

pacman -Rd 包名:在删除包时不检查依赖。

搜索包:

pacman -Ss 关键字:在仓库中搜索含关键字的包。

pacman -Qs 关键字: 搜索已安装的包。

pacman -Qi 包名:查看有关包的详尽信息。

pacman -Ql 包名:列出该包的文件。

其它用法:

pacman -Sw package_name 包名:只下载包,不安装。

pacman -Sc:清理未安装的包文件,包文件位于 /var/cache/pacman/pkg/ 目录。

pacman -Scc:清理所有的缓存文件

获取所有软件包:

pacman -Sl
MSYS2 安装所有软件包(跳过已安装的软件包):
#!/bin/bash

IFS=$'\n';
for LINE in `pacman -Sg`; do
pacman -S --needed --noconfirm ${LINE}
done;

不知道为什么,这样不行:

pacman -Sg | xargs pacman -S --need -- noconfirm

这样好像才是对的:

pacman -Sl | awk '{cmd="pacman -S --needed --noconfirm "$2;system(cmd)}'

下载完后:

参考:

https://www.jianshu.com/p/ea651cdc5530

http://www.ha97.com/3459.html

pacman 命令(安装所有软件包)的更多相关文章

  1. centos7最小安装后——网络配置、常见命令安装,远程连接、yum源安装软件包

    安装环境 #软件:vmware 14 #centos版本:CentOS-7-x86_64-DVD-1810 下载地址: #网络配置:NAT模式 配置 网络配置 #动态获取ip: centos7最小安装 ...

  2. Linux系统yum命令安装软件时保留(下载)rpm包 -- 转载

    昨天在部署zabbix监控的时候,遇到一个问题:监控服务器处于无外网状态,在线安装不可用.而某些依赖包度娘或谷姐搜索起来也挺呛人的!于是想到一个办法,利用有外网的服务器的yum命令来安装这些软件,并自 ...

  3. Pacman命令介绍

    用pacman很久了,一直没有深入去研究到底它包含多少神秘的力量,每次都是pacman -Syu就简单的把所有升级更新问题搞定实在是让笔者懒惰了很多.不过也正是因为pacman的简单让笔者爱不释手,同 ...

  4. yum命令——安装、卸载、查询等

    --常用命令 1.安装软件 yum install 软件名称 2.卸载软件 yum remove 软件名称 3.更新软件 yum update 软件名称 4.列出所有可安装的软件包 yum list ...

  5. centos 7.0最小化安装 查看yum 所有安装的软件包~

    使用命令 yum list installed [root@localhost ~]# yum list installed 已加载插件:fastestmirror base | 3.6 kB 00: ...

  6. Linux 下安装python软件包(pip、nose、virtualenv、distribute )

    新手刚开始学习Python,目前学习<笨方法学python>ing- 在学习习题46时需要安装几个软件包:pip.nose.virtualenv.distribute !在此记录Linux ...

  7. Ubuntu 如何使用apt命令安装、升级、卸载软件

    apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统. apt-get命令一般需要root权限执行,所以一般跟着su ...

  8. CentOS 使用yum命令安装Java SDK(openjdk)

    CentOS 6.X 和 5.X 自带有OpenJDK runtime environment  (openjdk).它是一个在linux上实现开源的java 平台.CentOS  yum 命令 安装 ...

  9. SuSE的命令安装软件 zypper

    转自:http://blog.csdn.net/s_k_yliu/article/details/6674079 SuSE的命令安装软件 zypper,yast2 redhat yum debain ...

随机推荐

  1. Permission denied (publickey,gssapi-keyex,gssapi-with-mic)

    当出现警告的时候,恭喜你,你已经离成功很近了. 远程主机这里设为slave2,用户为Hadoop. 本地主机设为slave1 以下都是在远程主机slave2上的配置,使得slave1可以免密码连接到s ...

  2. [译] 优化 WEBPACK 以更快地构建 REACT

    原文地址:OPTIMIZING WEBPACK FOR FASTER REACT BUILDS 原文作者:Jonathan Rowny 译文出自:掘金翻译计划 本文永久链接:https://githu ...

  3. H5项目 使用Cropper.js 实现图片 裁剪 操作 (APP端)

    参考地址: 1.https://www.jianshu.com/p/b252a7cbcf0b 2.https://blog.csdn.net/weixin_38023551/article/detai ...

  4. 基于IAP的STM32程序更新技术

    引言 嵌入式系统的开发最终需要将编译好的代码下载到具体的微控制器芯片上,而不同厂家的微控制器芯片有不同的下载方式.随着技术的发展和应用需求的更新,用户程序加载趋向于在线编程的方式,越来越多的芯片公司提 ...

  5. struts2之登陆拦截

    针对登录拦截功能,我们需要设置拦截哪些方法和不拦截哪些方法 action action类中,处理登录时,将用户.密码绑定到session ActionContext ac = ActionContex ...

  6. Linux环境下安装MySQL5.7

    记录一下Linux环境下安装MySQL,大家按顺序执行即可,5分钟内即可完成安装,亲测可行.不过下载MySQL安装包需要大家花费一些功夫,送个链接给大家,大家按需下载: https://dev.mys ...

  7. 装饰者模式(Decorator)---结构型

    1 基础知识 定义:在不改变原有对象的基础上,将功能附加到对象上即动态地给一个对象添加一些额外的职责.特征:提供了比继承更有弹性的替代方案. 本质:动态组合. 使用场景:扩展一个类的功能或给一个类添加 ...

  8. 1 Java面向对象

    0 工具 在分析面向对象时最好采用UML图进行分析设计 1 Java面向对象的特点 java采用面向对象的方法设计程序主要体现在:对象有属性和方法,事件的发生是对象间的信息交互产生的即程序中的get ...

  9. Connect AS400 through firewall(JDBC will require ports: 449, 8470, 8471, and 8476)

    What TCP ports are used by ODBC to connect to the DB2/400?  8471/9471 http://search400.techtarget.co ...

  10. 《30天自制操作系统》学习笔记--番外篇之Mac环境下的工具介绍

    这几天又有点不务正业了,书也没看,一直在搞这个破环境,尝试各种做法,网上各种垃圾信息,浪费了很多时间,说的基本都是废话,不过还是找到了一些,赶紧写下来,不然这个过几天又忘了 首先是环境,我用的是Max ...