1、shell和terminal
terminal意思终端,终端包括PC上的键盘,鼠标等设备。Linux上的terminal是仿真终端(Ctrl+Alt+T),作为一个模拟输入设备
shell,一个解释器,负责接受输入,通过它与操作系统交互,在终端输入的指令被shell接收,shell是包裹在操作系统外层的一道程序,就好像是操作系统的壳。
2、shell命令
pwd,显示当前的工作目录
hostname显示了计算机主机名
ls命令列举当前目录中的文件和子目录
ls -l -a -t(ls -lat) -l(长列表),-a(显示隐藏的点文件)-t(按照时间排列)
--,使用一个完整单词作为一个命令选项,则在该单词之前添加一个双连字符(--)
如果使用的是单字母选项,那么参数通常跟在一个空格后,而对于全单词选项,参数则跟在一个等号(=)后面。eg:ls --hide=Desktop。
tar 命令用于备份文件,用来建立,还原备份文件的工具程序,它可以加入、解开备份文件内的文件。
-c: 建立压缩档案 -x:解压 -t:查看内容
-r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件- z:有gzip属性的
-j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
# 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 -xf all.tar
这条命令是解出all.tar包中所有文件,-x是解开的意思压缩
tar –cvf jpg.tar *.jpg 将目录里所有jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar –cjf jpg.tar.bz2 *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg zip格式的压缩,需要先下载zip for linux
解压
tar –xvf file.tar 解压 tar包 tar -xzvf file.tar.gz 解压tar.gz tar -xjvf file.tar.bz2 解压 tar.bz2 tar –xZvf file.tar.Z 解压tar.Z
unrar e file.rar 解压rar unzip file.zip 解压zip
总结
*.tar 用 tar –xvf 解压 *.gz 用 gzip -d或者gunzip 解压 *.tar.gz和*.tgz 用 tar –xzf 解压 *.bz2 用 bzip2 -d或者用bunzip2 解压
*.tar.bz2用tar –xjf 解压 *.Z 用 uncompress 解压 *.tar.Z 用tar –xZf 解压 *.rar 用 unrar e解压 *.zip 用 unzip 解压
linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩
1.命令格式:tar[必要参数][选择参数][文件]
2.命令功能:用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的
3.命令参数:必要参数有如下: -A 新增压缩文件到已存在的压缩 -B 设置区块大小 -c 建立新的压缩文件 -d 记录文件的差别-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件 -x 从压缩的文件中提取文件- t 显示压缩文件的内容 -z 支持gzip解压文件 -j 支持bzip2解压文件
-Z 支持compress解压文件 -v 显示操作过程 -l 文件系统边界设置
-k 保留原有文件不覆盖 -m 保留文件不被覆盖 -W 确认压缩文件的正确性
可选参数如下: -b 设置区块数目 -C 切换到指定目录 -f 指定压缩文件
--help 显示帮助信息 --version 显示版本信息
4.常见解压/压缩命令
tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!)
.gz 解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName
.tar.gz 和 .tgz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName
.bz2 解压1:bzip2 -d FileName.bz2 解压2:bunzip2 FileName.bz2 压缩: bzip2 -z FileName.tar.bz2 解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName
.bz 解压1:bzip2 -d FileName.bz 解压2:bunzip2 FileName.bz 压缩:未知.tar.bz 解压:tar jxvf FileName.tar.bz 压缩:未知
.Z 解压:uncompress FileName.Z 压缩:compress FileName.tar.Z 解压:tar Zxvf FileName.tar.Z 压缩:tar Zcvf FileName.tar.Z DirName
.zip 解压:unzip FileName.zip 压缩:zip FileName.zip DirName
.rar 解压:rar x FileName.rar 压缩:rar a FileName.rar DirName5.使用实例
实例1:将文件全部打包成tar包
命令: tar -cvf log.tar log2012.log tar -zcvf log.tar.gz log2012.log tar -jcvf log.tar.bz2 log2012.log
查找命令
type查看命令的其他位置
使用命令历史记录重复执行命令
Ctrl+A 将光标移动到命令行的开头 Ctrl+F前进一个字符Ctrl+B 后退一个字符 Alt+F前进一个单词 Alt+B后退一个单词
命令行补齐 eg:echo $P<Tab>
命令行重复执行:history
!n运行命令编号,!!运行前一个命令 !?string?运行包含字符串的命令
连接扩展命令
shell能将命令的输入和输出重定向到其他命令或者文件中,使用元字符,元字符包括:管道字符(|),与号(&),分号,右括号,左括号,小于号,大于号。eg:cat /etc/passwd |sort |less
连续命令:以分号(;)隔开;eg: ;mail -s "Finished the long commanf" ch@example.com
后台命令:文本格式化命令(norff,troff)
nano打开文件,将光标向下移动到文件底部
显示mount系统调用的手册页:man -k ^mount
扩展算术表达式:eg:echo “ I am $[ 2015-1957] years old."
echo用于在shell中打印shell变量的值,或直接输出指定的字符串;cat连接文件并打印到标准输出设备,场用来显示文件的内容。
man命令,若要更仔细的学习某一特定命令,可以输入man command