189 8069 5689

linux校验文件命令 linux sha1校验

精彩的 Linux 命令有哪些

系统信息

成都创新互联于2013年成立,是专业互联网技术服务公司,拥有项目网站设计制作、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元木垒哈萨克做网站,已为上家服务,为木垒哈萨克各地企业和个人服务,联系电话:18980820575

arch 显示机器的处理器架构(1)

uname -m 显示机器的处理器架构(2)

uname -r 显示正在使用的内核版本

dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)

hdparm -i /dev/hda 罗列一个磁盘的架构特性

hdparm -tT /dev/sda 在磁盘上执行测试性读取操作

cat /proc/cpuinfo 显示CPU info的信息

cat /proc/interrupts 显示中断

cat /proc/meminfo 校验内存使用

cat /proc/swaps 显示哪些swap被使用

cat /proc/version 显示内核的版本

cat /proc/net/dev 显示网络适配器及统计

cat /proc/mounts 显示已加载的文件系统

lspci -tv 罗列 PCI 设备

lsusb -tv 显示滚猜 USB 设备

date 显示系统日期

cal 2007 显示2007年的日历表

date 041217002007.00 设大哗型置日期和时间 - 月日时分年.秒

clock -w 将时间修改保存到 BIOS

关机 (系统的关机、重启以及登出 )

shutdown -h now 关闭系统(1)

init 0 关闭系统(2)

telinit 0 关闭系统(3)

shutdown -h hours:minutes 按预定时间关闭系统

shutdown -c 取消按预定时间关闭系统

shutdown -r now 重启(1)

reboot 重启(2)

logout 注销

文件和目录

cd /home 进入 '/ home' 目录'

cd .. 返回上一级目录

cd ../.. 返回上两级目录

cd 进入个人的主目录

cd ~user1 进入个人的主目录

cd - 返回上次所在的目录

pwd 显示工作路径

ls 查看目录中的文件

ls -F 查看目录中的文件

ls -l 显示文件和目录的详细资料

ls -a 显示隐藏文件

ls *[0-9]* 显示包含数字的文件名和目录名

tree 显示文件和目录由根目录开始的树形结构(1)

lstree 显示文件和目录由根目录开始的树形结构(2)

mkdir dir1 创建一个叫做 'dir1' 的目录'

mkdir dir1 dir2 同时创建两个目录

mkdir -p /tmp/dir1/dir2 创建一个目录树

rm -f file1 删除芦灶一个叫做 'file1' 的文件'

rmdir dir1 删除一个叫做 'dir1' 的目录'

rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容

rm -rf dir1 dir2 同时删除两个目录及它们的内容

mv dir1 new_dir 重命名/移动 一个目录

cp file1 file2 复制一个文件

cp dir/* . 复制一个目录下的所有文件到当前工作目录

cp -a /tmp/dir1 . 复制一个目录到当前工作目录

cp -a dir1 dir2 复制一个目录

ln -s file1 lnk1 创建一个指向文件或目录的软链接

ln file1 lnk1 创建一个指向文件或目录的物理链接

touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm)

file file1 outputs the mime type of the file as text

iconv -l 列出已知的编码

iconv -f fromEncoding -t toEncoding inputFile outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding.

find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)

文件搜索

find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录

find / -user user1 搜索属于用户 'user1' 的文件和目录

find /home/user1 -name \*.bin 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件

find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件

find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件

find / -name \*.rpm -exec chmod 755 '{}' \; 搜索以 '.rpm' 结尾的文件并定义其权限

find / -xdev -name \*.rpm 搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备

locate \*.ps 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令

whereis halt 显示一个二进制文件、源码或man的位置

which halt 显示一个二进制文件或可执行文件的完整路径

挂载一个文件系统

mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在

umount /dev/hda2 卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出

fuser -km /mnt/hda2 当设备繁忙时强制卸载

umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用

mount /dev/fd0 /mnt/floppy 挂载一个软盘

mount /dev/cdrom /mnt/cdrom 挂载一个cdrom或dvdrom

mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom

mount /dev/hdb /mnt/cdrecorder 挂载一个cdrw或dvdrom

mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件

mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统

mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备

mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享

磁盘空间

df -h 显示已经挂载的分区列表

ls -lSr |more 以尺寸大小排列文件和目录

du -sh dir1 估算目录 'dir1' 已经使用的磁盘空间'

du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小

rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)

dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)

返回顶部索引 ^

用户和群组

groupadd group_name 创建一个新用户组

groupdel group_name 删除一个用户组

groupmod -n new_group_name old_group_name 重命名一个用户组

useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 创建一个属于 "admin" 用户组的用户

useradd user1 创建一个新用户

userdel -r user1 删除一个用户 ( '-r' 排除主目录)

usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性

passwd 修改口令

passwd user1 修改一个用户的口令 (只允许root执行)

chage -E 2005-12-31 user1 设置用户口令的失效期限

pwck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的用户

grpck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组

newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组

返回顶部索引 ^

文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消

ls -lh 显示权限

ls /tmp | pr -T5 -W$COLUMNS 将终端划分成5栏显示

chmod ugo+rwx directory1 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限

chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限

chown user1 file1 改变一个文件的所有人属性

chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性

chgrp group1 file1 改变文件的群组

chown user1:group1 file1 改变一个文件的所有人和群组属性

find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件

chmod u+s /bin/file1 设置一个二进制文件的 SUID 位 - 运行该文件的用户也被赋予和所有者同样的权限

chmod u-s /bin/file1 禁用一个二进制文件的 SUID位

chmod g+s /home/public 设置一个目录的SGID 位 - 类似SUID ,不过这是针对目录的

chmod g-s /home/public 禁用一个目录的 SGID 位

chmod o+t /home/public 设置一个文件的 STIKY 位 - 只允许合法所有人删除文件

chmod o-t /home/public 禁用一个目录的 STIKY 位

文件的特殊属性 - 使用 "+" 设置权限,使用 "-" 用于取消

chattr +a file1 只允许以追加方式读写文件

chattr +c file1 允许这个文件能被内核自动压缩/解压

chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件

chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接

chattr +s file1 允许一个文件被安全地删除

chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘

chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件

lsattr 显示特殊的属性

打包和压缩文件

bunzip2 file1.bz2 解压一个叫做 'file1.bz2'的文件

bzip2 file1 压缩一个叫做 'file1' 的文件

gunzip file1.gz 解压一个叫做 'file1.gz'的文件

gzip file1 压缩一个叫做 'file1'的文件

gzip -9 file1 最大程度压缩

rar a file1.rar test_file 创建一个叫做 'file1.rar' 的包

rar a file1.rar file1 file2 dir1 同时压缩 'file1', 'file2' 以及目录 'dir1'

rar x file1.rar 解压rar包

unrar x file1.rar 解压rar包

tar -cvf archive.tar file1 创建一个非压缩的 tarball

tar -cvf archive.tar file1 file2 dir1 创建一个包含了 'file1', 'file2' 以及 'dir1'的档案文件

tar -tf archive.tar 显示一个包中的内容

tar -xvf archive.tar 释放一个包

tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下

tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包

tar -xvfj archive.tar.bz2 解压一个bzip2格式的压缩包

tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包

tar -xvfz archive.tar.gz 解压一个gzip格式的压缩包

zip file1.zip file1 创建一个zip格式的压缩包

zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包

unzip file1.zip 解压一个zip格式压缩包

RPM 包 - (Fedora, Redhat及类似系统)

rpm -ivh package.rpm 安装一个rpm包

rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告

rpm -U package.rpm 更新一个rpm包但不改变其配置文件

rpm -F package.rpm 更新一个确定已经安装的rpm包

rpm -e package_name.rpm 删除一个rpm包

rpm -qa 显示系统中所有已经安装的rpm包

rpm -qa | grep httpd 显示所有名称中包含 "httpd" 字样的rpm包

rpm -qi package_name 获取一个已安装包的特殊信息

rpm -qg "System Environment/Daemons" 显示一个组件的rpm包

rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表

rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表

rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关系的列表

rpm -q package_name --whatprovides 显示一个rpm包所占的体积

rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l

rpm -q package_name --changelog 显示一个rpm包的修改历史

rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供

rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表

rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书

rpm --checksig package.rpm 确认一个rpm包的完整性

rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性

rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间

rpm -Va 检查系统中所有已安装的rpm包- 小心使用

rpm -Vp package.rpm 确认一个rpm包还未安装

rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从一个rpm包运行可执行文件

rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从一个rpm源码安装一个构建好的包

rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包

YUM 软件包升级器 - (Fedora, RedHat及类似系统)

yum install package_name 下载并安装一个rpm包

yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系

yum update package_name.rpm 更新当前系统中所有安装的rpm包

yum update package_name 更新一个rpm包

yum remove package_name 删除一个rpm包

yum list 列出当前系统中安装的所有包

yum search package_name 在rpm仓库中搜寻软件包

yum clean packages 清理rpm缓存删除下载的包

yum clean headers 删除所有头文件

yum clean all 删除所有缓存的包和头文件

DEB 包 (Debian, Ubuntu 以及类似系统)

dpkg -i package.deb 安装/更新一个 deb 包

dpkg -r package_name 从系统删除一个 deb 包

dpkg -l 显示系统中所有已经安装的 deb 包

dpkg -l | grep httpd 显示所有名称中包含 "httpd" 字样的deb包

dpkg -s package_name 获得已经安装在系统中一个特殊包的信息

dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表

dpkg --contents package.deb 显示尚未安装的一个包所提供的文件列表

dpkg -S /bin/ping 确认所给的文件由哪个deb包提供

APT 软件工具 (Debian, Ubuntu 以及类似系统)

apt-get install package_name 安装/更新一个 deb 包

apt-cdrom install package_name 从光盘安装/更新一个 deb 包

apt-get update 升级列表中的软件包

apt-get upgrade 升级所有已安装的软件

apt-get remove package_name 从系统删除一个deb包

apt-get check 确认依赖的软件仓库正确

apt-get clean 从下载的软件包中清理缓存

apt-cache search searched-package 返回包含所要搜索字符串的软件包名称

查看文件内容

cat file1 从第一个字节开始正向查看文件的内容

tac file1 从最后一行开始反向查看一个文件的内容

more file1 查看一个长文件的内容

less file1 类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作

head -2 file1 查看一个文件的前两行

tail -2 file1 查看一个文件的最后两行

tail -f /var/log/messages 实时查看被添加到一个文件中的内容

linux shell 硬盘文件读写校验测试脚本

读写失败时dd的返回值纳链分别是多少一直查不到,而如果这个没法弄明白的话,校验的对错就没什么意义了(根本不知道是dd出的错还是md5sum出的错),算了,你将就一下吧,查到后改一下就好了。

#! /bin/bash

infile="$1"

cycle=0

copy=0

err=0

if [ "$#" -ne 1 ] || [ ! -f "$1" ]

then

echo "用法:test infile"

exit 1;

fi

echo -e "警告帆册:本测试程序对磁盘有较大损害,请您谨慎运行。"

echo -e " 按Crtl+C键终止测试"态茄宏

echo -e "开始测试?(y/n)y:\c"

while read -r answer /dev/tty

do

if [ "$answer" == 'n' ] || [ "$answer" == 'N' ]

then

echo "结果:$cycle 轮共 $copy 次复制,读/写错误 $err 次"

rm -f ${infile}_*

exit 0

fi

let cycle++

echo "========================= 第 $cycle 轮 ==========================="

rm -f "$infile"_*

sync

let copy++

#方便起见,选第一分区爆之

while [ "$(df -k|sed -n '3q;2s/ */ /g;2p'|cut -d ' ' -f 4)" -gt 1 ]

do

echo "=========== 副本 $copy ==========="

outfile="${infile}_${copy}"

dd if="$infile" of="$outfile"

#关于dd命令如果遭遇读失败或写失败的返回码无据可查,但肯定不是0,

另一种实现方法是用md5sum --status检验,但这种方法看起来多此一举反而导致读写比变为3:1

if [ "$?" -ne 0 ]

then

let err++

fi

let copy++

echo sync

trap "echo '结果:' $cycle '轮共' $copy '次复制,读/写错误' $err '次' rm -f ${infile}_* exit;" 1 2 3 15

done

echo -e "磁盘已满,删除测试文件后继续?(y/n)y:\c"

done

linux 常用命令要具体例子

命令很多的,一下子学了也会忘记的,只能慢慢积累,很多一般都用不上的1、文件查看和连接命令

将文件连接到一起,用“”操作将几个锋蠢文件组合成一个新的文件,或者是用“”把文件追加到已存文件的后面。

语法:

cat[参数]filelist

-n或--number:由1开始对所有输出的行数进行编号

-b或--number-nonblank:和n相似,但对空行不编号

-s:遇到两行空白,替换为一行空白

-v:显示不可打印的字符

filelist:用于结合文件的可选列表。2、分屏显示命令

类似于cat,但它是每次显示一页,按空格显示下一页,按q键退出,按h〉键给出帮助信息。该命令还有搜索字符的功能。

语法

more [选项] file...

-num:指定每屏显示的行数

-d:在屏幕下面提示信息

-l:more默认遇到送纸符^L会暂停,使用该选项可以取消该功能

-f:计算实际行数

-p:不是以卷动的方式显示每页,而是先清屏再显示

-s:遇到两行空白,替换为一行空白

-u:不显示下划线

+/string:在文件中搜索字符串string,并显示字符串所在页的内容

+/num:从第num行开始显示

file用于显示的文件

3、按页显示文件。类似于more,但允许在文件中前后移动。

语法:

less [参数]文件名

-i:查询时忽略大小写。燃孙

-num:指定每页显示的行数

-pstring:在文件中搜索字符串string,并从第一个符合条件的地方开始显示

-S:当某列的内容超过显示画面的宽度时,直接将超出的部分截断舍弃,默认情况下会把超出的部分折回来显示复制、删除和移动命令

1、拷贝文件。

语法:

cp[选项]sourcedest

cp[选项]source....directory

-r递归拷贝目录

-f删除已存在的目标文件再复制

-a在备份中尽可能的保留源文件的结构和属性。

2、删除

rm [选项] name....

该命令用于逐个删除指定的文件或目录。默认清苦下,name为文件名,rm命令不删除目录,只有指定-d选项时候,才能删除目录

语法:

-f强制删银段陪除,包括只读文件,并且不给用户任何提示

-i在删除每个文件时提示用户

-r递归删除目录下的内容移动或更名文件和目录

语法:

mv  [参数]源文件目标文件

-f强制复盖已有文件。

-i在复盖已有文件前提示用户。

-u在目标文件的时间比原文件新时不复盖目标文件。

-v在移动文件时输出相关信息。创建和删除目录命令

1、创建目录命令

mkdir[参数]目录名

-p如果父目录不存在,创建所有的父目录。2、删除空目录。

语法:

rmdir[参数]目录列表

-p 表示删除指定目录后,如果该目录的父目录为空,则将一并删除切换工作目录和显示目录命令

1、改变当前工作目录。

语法:

cd 目录名

如果后面不加目录名,则返回用户的根目录,此外用户必须拥有进入该目录的权限。另外cd ~ 指切换到自己的主目录,cd ../.. 可以切换到单前目录的上上目录2、显示正在工作或当前的目录名。

pwd [参数]3、列出目录中的内容。

语法:

ls [参数][目录]

-A  显示所有文件,包括隐藏文件(以“.”开头的文件,但不列出当前目录“.”和上级目录“..”

-a  显示所有文件,包括“.”和“..”目录。

-d  只列出目录名;不列出它的内容。

-l  给出文件的长列表。包括权限、所有权、大小、文件名、最后修改时间等等。

-t 按时间顺序显示

-F 在列出的文件名后以符号表示文件类型,一般文件不加符号,可执行文件“*”,目录加“/”

-R 若目录下有文件,则递归地列出目录下的文件查找与定位命令

1、查找文件或目录命令

格式

find [path....] [expression]

该命令在目录树层次中从path开始向下查找文件,将符合expression要求的文件列出来。输入命令中第一个以-、(、)、,、!开始的参数作为expression的部分,在这些符号之前的参数都被认为是要搜索的路径,在这些符号之后的才被认为是expression的部分,如果不给出path,则使用当前工作的目录,如果不给出expression,则使用-print作为预设expression

expression的参数有二三十个之多,这里只提几个常用的

-aminn 在过去n分钟内被访问过的文件

-anewerfile 比文件file更晚被访问过的文件

-atimen 在过去n天被访问过的文件

-cminn 在过去n分钟内修改过的文件

-cnewerfile 比文件file更新的文件

-ctimen 在过去n天内修改过的文件

-empty 内容为空的文件

-gidn或-groupname gid是n或是group名是name的文件

-ipathp,-pathp 路径名称符合p的文件,ipath表示忽略大小写

-namename,-inamename 文件名称符合name的文件,iname表示忽略大小写

-sizen单位 文件大小是n个单位

-type文件类型〉文件类型的含义与名利ls的选型一样

-pidn 进程id是n的文件

exp1 exp2 或者exp1 -a exp2 或者exp1 -and exp2 含义相同,表示同时满足这两个条件

!expr或者-not expr 表示expr的否定

exp1 -o exp2 或者exp1 -or exp2 表示满足其中一个条件就可以2、文件定位命令

locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的资料库,之后当寻找时就只需查询这个资料库,而不必实际深入档案系统之中了。在一般的distribution 之中,资料库的建立都被放在 contab 中自动执行。一般使用者在使用时只要用locate [选项] search string-u 建立资料库,-u 会由根目录开始

-U 建立资料库,-U 则可以指定开始的位置。-e 将排除在寻找的范围之外。-l 如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的权限资料。-f 将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案放在资料库中。-q 安静模式,不会显示任何错误讯息。-n 至多显示 个输出。-r 使用正规运算式 做寻找的条件。-o 指定资料库存的名称。-d 指定资料库的路径-h 显示辅助讯息-v 显示更多的讯息-V 显示程式的版本讯息连接命令

ln [选项] source dest

Linux/Unix 档案系统中,有所谓的连结(link),我们可以将其视为档案的别名,而连结又可分为两种 : 硬连结(hard link)与软连结(symbolic link),硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统。 ln source dist 是产生一个连结(dist)到 source,至于使用硬连结或软链结则由参数决定。 不论是硬连结或软链结都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。-f : 链结时先将与 dist 同档名的档案删除

-d : 允许系统管理者硬链结自己的目录

-i : 在删除与 dist 同档名的档案时先进行询问

-n : 在进行软连结时,将 dist 视为一般的档案

-s : 进行软链结(symbolic link)

-v : 在连结之前显示其档名

-b : 将在链结时会被覆写或删除的档案进行备份

改变文件或目录的时间命令

touch [选项] file1 [file2....]

-a 改变档案的读取时间记录。

-m 改变档案的修改时间记录。

-c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。

-f 不使用,是为了与其他 unix 系统的相容性而保留。

-r 使用参考档的时间记录,与 --file 的效果一样。

-d 设定时间与日期,可以使用各种不同的格式。

-t 设定档案的时间记录,格式与 date 指令相同。

--no-create 不会建立新档案。

备份命令

tar 主选项 [辅选项] 文件或目录

tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案,如软盘。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。Linux上的tar是GNU版本的。

主选项:

c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。

r 把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。

t 列出档案文件的内容,查看已经备份了哪些文件。

u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。

x 从档案文件中释放文件。

辅选项:

b 该选项是为磁带机设定的。其后跟一数字,用来说明区块的大小,系统预设值为20(20*512 bytes)。

f 使用档案文件或设备,这个选项通常是必选的。

k 保存已经存在的文件。例如我们把某个文件还原,在还原的过程中,遇到相同的文件,不会进行覆盖。

m 在还原文件时,把所有文件的修改时间设定为现在。

M 创建多卷的档案文件,以便在几个磁盘中存放。

v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。

w 每一步都要求确认。

z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。

tar的最基本的用法举例

tar -cf all.tar *.jpg

这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。

tar -rf all.tar *.gif

这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

tar -uf all.tar logo.gif

这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

tar -tf all.tar

这条命令是列出all.tar包中所有文件,-t是列出文件的意思

tar -tvf all.tar |more

这条命令是列出all.tar包中所有文件,并以分屏方式压缩和解压命令

gzip命令是用来压缩文件的。它不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。

gzip [选项] [文件名]

-c 输出并保留原文件

-d 将压缩文件解压,默认情况下为压缩

-l 显示压缩文件的压缩的提示信息

-r 递归的压缩或解压

-t,可以用来测试压缩文件的完整性。如果文件正常,gzip不会给出任何显示。如果想看到OK这两个字母,可以在测试某个文件时使用-tv参数。

-v 对每个操作的文件,显示文件名和压缩比例

unzip 命令位于/usr/bin目录中,它们和MS DOS下的pkzip、pkunzip及MS Windows中的Winzip软件功能一样,将文件压缩成.zip文件,以节省硬盘空间,当需要的时候再将压缩文件用unzip命令解开。该命令使用权限是所有用户。

unzip [选项] [压缩文件名]

-d目录 知道解压的某个目录下,默认为当前目录

-n:解压缩时不要覆盖原有的文件。

-o:不必先询问用户,unzip执行后覆盖原有文件

-j:不处理压缩文件中原有的目录路径,把所有文件解压到同一目录

-v:察看压缩文件的内容,但不解压

-t:检查压缩文件是否正确,但不解压显示文字命令

echo [-n] 字符串〉

在屏幕上显示字符串,-n表示不换行显示日立命令

cal [选项] [[月]年]

- j 显示出给定月中的每一天是一年中的第几天(从1月1日算起)。

- y 显示出整年的日历。

-1 显示当月的日历

-3显示前一月,本月,下月的日历

-s以星期天作为一周的第一天

-m以星期一作为一周的第一天如cal 5 2006

显示2006年5月份的日历

日期时间命令

date [选项] [+FormatString] 显示日期时间

date setstring 设置日期时间

它的选项比较多,一凡在此就不一一列出来了清屏命令clear软件包管理

RPM全称是 Red Hat Package Manager(Red Hat包管理器)。几乎所有的 Linux 发行版本都使用这种形式的软件包管理安装、更新和卸载软件。

01、安装

rpm -i ( or --install) options file1.rpm ... fileN.rpm

-h (or --hash) 安装时输出hash记号 (``#'')

--test 只对安装进行测试,并不实际安装。

--percent 以百分比的形式输出安装的进度。

--excludedocs 不安装软件包中的文档文件

--includedocs 安装文档

--replacepkgs 强制重新安装已经安装的软件包

--replacefiles 替换属于其它软件包的文件

--force 忽略软件包及文件的冲突

--noscripts 不运行预安装和后安装脚本

--prefix 将软件包安装到由 指定的路径下

--ignorearch 不校验软件包的结构

--ignoreos 不检查软件包运行的操作系统

--nodeps 不检查依赖性关系

--ftpproxy 用 作为 FTP代理

--ftpport 指定FTP的端口号为

通用选项

-v 显示附加信息

-vv 显示调试信息

--root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下

--rcfile 设置rpmrc文件为

--dbpath 设置RPM 资料库存所在的路径为02、删除

命令格式:

rpm -e ( or --erase) options pkg1 ... pkgN

参数

pkg1 ... pkgN :要删除的软件包

详细选项

--test 只执行删除的测试

--noscripts 不运行预安装和后安装脚本程序

--nodeps 不检查依赖性

03、升级

命令格式

rpm -U ( or --upgrade) options file1.rpm ... fileN.rpm

参数

file1.rpm ... fileN.rpm 软件包的名字

详细选项

-h (or --hash) 安装时输出hash记号 (``#'')

--oldpackage 允许"升级"到一个老版本

--test 只进行升级测试

--excludedocs 不安装软件包中的文档文件

--includedocs 安装文档

--replacepkgs 强制重新安装已经安装的软件包

--replacefiles 替换属于其它软件包的文件

--force 忽略软件包及文件的冲突

--percent 以百分比的形式输出安装的进度。

--noscripts 不运行预安装和后安装脚本

--prefix 将软件包安装到由 指定的路径下

--ignorearch 不校验软件包的结构

--ignoreos 不检查软件包运行的操作系统

--nodeps 不检查依赖性关系

--ftpproxy 用 作为 FTP代理

--ftpport 指定FTP的端口号为04、查询

命令格式:

rpm -q ( or --query) options

参数:

pkg1 ... pkgN :查询已安装的软件包

详细选项

-p (or ``-'') 查询软件包的文件

-f 查询属于哪个软件包

-a 查询所有安装的软件包

--whatprovides 查询提供了 功能的软件包

-g 查询属于 组的软件包

--whatrequires 查询所有需要 功能的软件包

信息选项

示软件包的全部标识

-i 显示软件包的概要信息

-l 显示软件包中的文件列表

-c 显示配置文件列表

-d 显示文档文件列表

-s 显示软件包中文件列表并显示每个文件的状态

--scripts 显示安装、卸载、校验脚本

--queryformat (or --qf) 以用户指定的方式显示查询信息

--dump 显示每个文件的所有已校验信息

--provides 显示软件包提供的功能

--requires (or -R) 显示软件包所需的功能

05、校验已安装的软件包

命令格式:

rpm -V ( or --verify, or -y) options

参数

pkg1 ... pkgN 将要校验的软件包名

软件包选项

-p Verify against package file

-f 校验所属的软件包

-a Verify 校验所有的软件包

-g 校验所有属于组 的软件包

详细选项

--noscripts 不运行校验脚本

--nodeps 不校验依赖性

--nofiles 不校验文件属性

06、校验软件包中的文件

语法:

rpm -K ( or --checksig) options file1.rpm ... fileN.rpm

参数:

file1.rpm ... fileN.rpm 软件包的文件名连接帮助命令

man command

info command 该功能比man强大,但目前只在Linux中有,其他的UNIX中没有该命令

help command


网站名称:linux校验文件命令 linux sha1校验
URL分享:http://jkwzsj.com/article/dsppjho.html

其他资讯