实践备份软件包
发表于 : 2010-05-31 21:12
pkg_add 命令没学会下载软件包和相关依赖包。不得已,写了个小脚本,备份tgz文件,好不能上网时,重装用。
pkg_backup.sh内容如下:
#/bin/sh
pkg_info | awk '{print$1}' | sed s/$/\.tgz/g >pkg.log
wget -c -B ftp://ftp.openbsd.org/pub/OpenBSD/4.7/packages/amd64 -i pkg.log
详细解说一下,可能对新手有用。
1)pkg_info 命令表示列出当前已安装的软件。
2) | (管道)表示 前面命令输出的结果,作为后面命令的输入传递给后面命令
3)awk '{print$1}' 表示打印第一列
4)sed s/$/\.tgz/g 表示在每一行的尾部,添加.tgz
5) >pkg.log 表示把结果存入文件pkg.log
7)wget 是一个很流行的命令行下载文件命令
8)-c 表示可以断点续传
9) -B ftp://ftp.openbsd.org/pub/OpenBSD/4.7/packages/amd64 表示从网上这个位置下载
10)-i pkg.log 表示下载文件的列表。(这个很有用,如果你要下载一堆没有规律的文件,或者规律很复杂的文件)
pkg_backup.sh内容如下:
#/bin/sh
pkg_info | awk '{print$1}' | sed s/$/\.tgz/g >pkg.log
wget -c -B ftp://ftp.openbsd.org/pub/OpenBSD/4.7/packages/amd64 -i pkg.log
详细解说一下,可能对新手有用。
1)pkg_info 命令表示列出当前已安装的软件。
2) | (管道)表示 前面命令输出的结果,作为后面命令的输入传递给后面命令
3)awk '{print$1}' 表示打印第一列
4)sed s/$/\.tgz/g 表示在每一行的尾部,添加.tgz
5) >pkg.log 表示把结果存入文件pkg.log
7)wget 是一个很流行的命令行下载文件命令
8)-c 表示可以断点续传
9) -B ftp://ftp.openbsd.org/pub/OpenBSD/4.7/packages/amd64 表示从网上这个位置下载
10)-i pkg.log 表示下载文件的列表。(这个很有用,如果你要下载一堆没有规律的文件,或者规律很复杂的文件)