LINUX常用命令 经典解释

    技术2022-05-20  46

    linux解压 tar命令

    tar命令tar [-cxtzjvfpPN] 文件与目录 .... 参数: -c :建立一个压缩文件的参数指令(create 的意思) -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在! 因为不可能同时压缩与解压缩。 -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩? -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程! -f :使用档名,请留意,在 之后要立即接档名喔!不要再加参数!    例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成    『 tar -zcvPf tfile sfile』才对喔! -p :使用原文件的原来属性(属性不会依据使用者而变) -P :可以使用绝对路径来压缩! -N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中! --exclude FILE:在压缩的过程中,不要将 FILE 打包! 范例: 范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar [root@linux ~]# tar -cvf /tmp/etc.tar /etc<==仅打包,不压缩![root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包后,以 gzip 压缩[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包后,以 bzip2 压缩特别注意,在参数 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。 # 如果加 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file  # 如果加 参数,则以 .tar.bz2 来作为附档名啊~ # 上述指令在执行的时候,会显示一个警告讯息: # tar: Removing leading `/" from member names』那是关於绝对路径的特殊设定。

    范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?[root@linux ~]# tar -ztvf /tmp/etc.tar.gz由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时, # 就得要加上 这个参数了!这很重要的!

    范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下[root@linux ~]# cd /usr/local/src[root@linux src]# tar -zxvf /tmp/etc.tar.gz在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说, # 我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz  # 则解开的目录会在 /usr/local/src/etc 呢!另外,如果您进入 /usr/local/src/etc # 则会发现,该目录下的文件属性与 /etc/ 可能会有所不同喔!

    范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已[root@linux ~]# cd /tmp[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件, # 就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 是被拿掉了!

    范例五:将 /etc/ 内的所有文件备份下来,并且保存其权限![root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

    范例六:在 /home 当中,比 2005/06/01 新的文件才备份[root@linux ~]# tar -N "2005/06/01" -zcvf home.tar.gz /home

    范例七:我要备份 /home, /etc ,但不要 /home/dmtsai[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

    范例八:将 /etc/ 打包后直接解开在 /tmp 底下,而不产生文件![root@linux ~]# cd /tmp[root@linux tmp]# tar -cvf - /etc | tar -xvf -这个动作有点像是 cp -r /etc /tmp 啦~依旧是有其有用途的! # 要注意的地方在於输出档变成 而输入档也变成 ,又有一个 存在~ # 这分别代表 standard output, standard input 与管线命令啦! # 这部分我们会在 Bash shell 时,再次提到这个指令跟大家再解释啰

    LINUX 下安装软件方法命令方法怎么安装应用软件?    我的软件安装在什么地方?    如何删除不要的应用软件?    ……    下面,我们就一起来认识一下这些方面的问题。    一、 解析Linux应用软件安装包:    通常Linux应用软件的安装包有三种:    1) tar包,如software-1.2.3-1.tar.gz。它是使用UNIX系统的打包工具tar打包的。    2) rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux提供的一种包封装格式。    3) dpkg包,如software-1.2.3-1.deb。它是Debain Linux提供的一种包封装格式。         而且,大多数Linux应用软件包的命名也有一定的规律,它遵循:    名称-版本-修正版-类型    例如:    1) software-1.2.3-1.tar.gz 意味着:    软件名称:software    版本号:1.2.3    修正版本:1     类型:tar.gz,说明是一个tar包。    2) sfotware-1.2.3-1.i386.rpm    软件名称:software    版本号:1.2.3    修正版本:1    可用平台:i386,适用于Intel 80x86平台。    类型:rpm,说明是一个rpm包。    注:由于rpm格式的通常是已编译的程序,所以需指明平台。在后面会详细说明。    而software-1.2.3-1.deb就不用再说了吧!大家自己练习一下。  二、 了解包里的内容:    一个Linux应用程序的软件包中可以包含两种不同的内容:    1) 一种就是可执行文件,也就是解开包后就可以直接运行的。在Windows中所 有的软件包都是这种类型。安装完这个程序后,你就可以使用,但你看不到源程序。而且下载时要注意这个软件是否是你所使用的平台,否则将无法正常安装。    2) 另一种则是源程序,也就解开包后,你还需要使用编译器将其编译成为可执行文件。这在Windows系统中是几乎没有的,因为Windows的思想是不开放源程序的。    通常,用tar打包的,都是源程序;而用rpmdpkg打包的则常是可执行程序。一般来说,自己动手编译源程序能够更具灵活性,但也容易遇到各种问题和困难。而相对来说,下载那些可执行程序包,反而是更容易完成软件的安装,当然那样灵活性就差多了。所以一般一个软件总会提供多种打包格式的安装程序的。你可以根据自己的情况来选择。  三、 搞定使用tar打包的应用软件    1. 安装:    整个安装过程可以分为以下几步:    1) 取得应用软件:通过下载、购买光盘的方法获得;    2)解压缩文件:一般tar包,都会再做一次压缩,如gzipbz2等,所以你需要先解压。如果是最常见的gz格式,则可以执行:tar xvzf 软件包名,就可以一步完成解压与解包工作。如果不是,则先用解压软件,再执行tar xvf 解压后的tar进行解包;    3) 阅读附带的INSTALL文件、README文件;    4) 执行./configure命令为编译做好准备;    5) 执行make命令进行软件编译;    6) 执行make install完成安装;    7) 执行make clean删除安装时产生的临时文件。    好了,到此大功告成。我们就可以运行应用程序了。但这时,有的读者就会问,我怎么执行呢?这也是一个Linux特色的问题。其实,一般来说, Linux的应用软件的可执行文件会存放在/usr/local/bin目录下!不过这并不是放四海皆准的真理,最可靠的还是看这个软件的 INSTALLREADME文件,一般都会有说明。    2. 卸载:    通常软件的开发者很少考虑到如何卸载自己的软件,而tar又仅是完成打包的工作,所以并没有提供良好的卸载方法。    那么是不是说就不能够卸载呢!其实也不是,有两个软件能够解决这个问题,那就是KinstallKife,它们是tar包安装、卸载的黄金搭档。它们的使用方法,笔者会另行文介绍。在此就不加赘述了。  四、 搞定使用rpm打包的应用软件    rpm可谓是Redhat公司的一大贡献,它使Linux的软件安装工作变得更加简单容易。    1. 安装:    我只需简单的一句话,就可以说完。执行:  rpm ivh rpm软件包名    更高级的,请见下表:  rpm参数 参数说明  -i 安装软件  -t 测试安装,不是真的安装  -p 显示安装进度  -f 忽略任何错误  -U 升级安装  -v 检测套件是否正确安装    这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。    2. 卸载:    我同样只需简单的一句话,就可以说完。执行:      rpm 软件名    不过要注意的是,后面使用的是软件名,而不是软件包名。例如,要安装software-1.2.3-1.i386.rpm这个包时,应执行:       rpm ivh software-1.2.3-1.i386.rpm    而当卸载时,则应执行:      rpm e software        另外,在Linux中还提供了象GnoRPMkpackage等图形化的RPM工具,使得整个过程会更加简单。这些软件的具体应用,笔者会另行文介绍。  五、 搞定使用deb打包的应用程序    这是Debian Linux提供的一个包管理器,它与RPM十分类似。但由于RPM出现得更早,所以在各种版本的Linux都常见到。而debian的包管理器dpkg则只出现在Debina Linux中,其它Linux版本一般都没有。我们在此就简单地说明一下:      1. 安装        dpkg i deb软件包名      如:dpkg i software-1.2.3-1.deb    2. 卸载         dpkg 软件名       如:dpkg e software    好了,就说到这,希望能够帮助大家找到北。有什么问题请在www.linuxaid.com.cn/bbs/安装与入门版中提出,或E-mail tofjxufeng@linuxaid.com.cn===================================================================================软件的安装  ---- Linux下软件的安装主要有两种不同的形式。第一种安装文件名为filename.tar.gz。另一种安装文件名为 filename.i386.rpm。以第一种方式发行的软件多为以源码形式发送的。第二种方式则是直接以二进制形式发行的。i386即表示该软件是按 Inter 386指令集编译生成的。  ---- 对于第一种,安装方法如下:  ---- 首先,将安装文件拷贝至你的目录中。例如,如果你是以root身份登录上的,就将软件拷贝至/root中。  ---- #cp filename.tar.gz /root  ---- 由于该文件是被压缩并打包的,所以,应对其解压缩。命令为:  ---- #tar xvzf filename.tar.gz  ---- 执行该命令后,安装文件按路径,解压缩在当前目录下。用ls命令可以看到解压缩后的文件。通常在解压缩后产生的文件中,有名为"INSTALL"的文件。该文件为纯文本文件,详细讲述了该软件包的安装方法。  ---- 对于多数需要编译的软件,其安装的方法大体相同。执行解压缩后产生的一个名为configure的可执行脚本程序。它是用于检查系统是否有编译时所需的库,以及库的版本是否满足编译的需要等安装所需要的系统信息。为随后的编译工作做准备。命令为:  ---- #./configure  ---- 如果检查过程中,发现有错误,configure将给予提示,并停止检查。你可以跟据提示对系统进行配置。再重新执行该程序。检查通过后,将生成用于编译的MakeFile文件。此时,可以开始进行编译了。编译的过程视软件的规模和计算机的性能的不同,所耗费的时间也不同。命令为:  ---- #make  ---- 成功编译后,键入如下的命令开始安装:  ---- #make install  ---- 安装完毕,应清除编译过程中产生的临时文件和配置过程中产生的文件。键入如下命令:  #make clean  #make distclean  至此,软件的安装结束。  ---- 对于第二种,其安装方法要简单的多。  ---- 同第一种方式一样,将安装文件拷贝至你的目录中。然后使用rpm来安装该文件。命令如下:  ---- #rpm -i filename.i386.rpm  ---- rpm将自动将安装文件解包,并将软件安装到缺省的目录下。并将软件的安装信息注册到rpm的数据库中。参数i的作用是使rpm进入安装模式。  ---- 另外,还有一些Linux平台下的商业软件。在其安装文件中,有Setup安装程序,其安装方法同Windows平台下的一样。如:Corel WordPerfect  软件的卸载  ---- 软件的卸载主要是使用rpm来进行的。卸载软件首先要知道软件包在系统中注册的名称。键入命令:  ---- #rpm -q -a  ---- 即可查询到当前系统中安装的所有的软件包。参数q的作用是使rpm进入查询命令模式。参数a是查询模式的子参数,意为全部(ALL)。查询到的信息较多,可使用less人屏显示。  ---- 确定了要卸载的软件的名称,就可以开始实际卸载该软件了。键入命令:  ---- #rpm -e [package name]  ---- 即可卸载软件。参数e的作用是使rpm进入卸载模式。对名为[package name]的软件包进行卸载。由于系统中各个软件包之间相互有依赖关系。如果因存在依赖关系而不能卸载,rpm将给予提示并停止卸载。你可以使用如下的命令来忽略依赖关系,直接开始卸载:  ---- #rpm -e [package name] -nodeps  ---- 忽略依赖关系的卸载可能会导致系统中其它的一此软件无法使用。你可以使用  ---- #rpm -e [package name] -test  ---- 使rpm进行一次卸载预演,而不是真正卸载。这样可以使你检查一下软件是否存在有依赖关系。卸载过程中是否有错误。

    Linux查找并安装(卸载)软件包----可能不知道里面可安装文件的名称

    安装某个软件包及其相关软件包 apt -get install  文件名如 apt-get install openssh     不但会安装openssh,同时会升级openssl

    删除该软件包,同时会删除依赖于它的软件包 apt -get remove 文件名

    如:apt -get remove 文件名  (卸载一个已安装的软件包-----保留配置文件)

    apt -get -purge remove packagename (卸载一个已安装的软件包---删除配置文件)

    dpkj -force -all -purge packgename (删除很难删除的流氓软件)

    apt -get autoremove   (因为apt会把已安装或已卸载的软件都备份在硬盘上,如果需要  

    空间的话,可以通过这个命令来删除已经删掉的软件)

    apt-get autoclean (定期运行这个命令来清除那些已经卸载的软件包的.deb文件,通过

    这种方式可以释放大量的磁盘空间)

    apt -get clean(这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用)

    apt -get upgrade (更新所有已安装的软件包)

    apt -get dist-upgrade  (将系统升级到新版本)

    Linux命令之文档编辑

    首先,vi命令怎么进去呢?比如,怎样进去去编辑文件/mnt/sdcard/etc/.... ?

    答:在命令行中输入vi 接着你要编辑的文件路径,如:[root@loalhost]#vi /mnt/sdcard/etc/...

     :vi分为浏览模式和编辑模式,直接输入vi testFile,就进入了浏览模式,然后按小写的i

    就进入的编辑模式,再按esc,:wq就存盘退出了,:q!强制退出

    linux vi命令详解及使用技巧集锦

      进入vi的命令

      vi filename :打开或新建文档,并将光标置于第一行首

      vi +n filename :打开文档,并将光标置于第n行首

      vi + filename :打开文档,并将光标置于最后一行首

      vi +/pattern filename:打开文档,并将光标置于第一个和pattern匹配的串处

      vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

      vi filename....filename :打开多个文档,依次编辑

      移动光标类命令

      :光标左移一个字符

      :光标右移一个字符

      space:光标右移一个字符

      Backspace:光标左移一个字符

      kCtrl+p:光标上移一行

      jCtrl+n :光标下移一行

      Enter :光标下移一行

      w:光标右移一个字至字首

      b:光标左移一个字至字首

      e:光标右移一个字j至字尾

      :光标移至句尾

      :光标移至句首

      }:光标移至段落开头

      {:光标移至段落结尾

      nG:光标移至第n行首

      n+:光标下移n

      n-:光标上移n

      n$:光标移至第n行尾

      :光标移至屏幕顶行

      :光标移至屏幕中间行

      :光标移至屏幕最后行

      0(注意是数字零)光标移至当前行首

      $:光标移至当前行尾

      屏幕翻滚类命令

      Ctrl+u:向文档首翻半屏

      Ctrl+d:向文档尾翻半屏

      Ctrl+f:向文档尾翻一屏

      Ctrl+b;向文档首翻一屏

      nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

      插入文本类命令

      :在光标前

      :在当前行首

      a:光标后

      A:在当前行尾

      o:在当前行之下新开一行

      O:在当前行之上新开一行

      r:替换当前字符

      R:替换当前字符及其后的字符,直至按ESC

      s:从当前光标位置处开始,以输入的文本替代指定数目的字符

      S:删除指定数目的行,并以所输入文本代替之

      ncwnCW:修改指定数目的字

      nCC:修改指定数目的行

      删除命令

      ndwndW:删除光标处开始及其后的n-1个字

      do:删至行首

      d$:删至行尾

      ndd:删除当前行及其后n-1

      xX:删除一个字符,x删除光标后的,而X删除光标前的

      Ctrl+u:删除输入方式下所输入的文本

      搜索及替换命令 :

      /pattern:从光标开始处向文档尾搜索pattern

      ?pattern:从光标开始处向文档首搜索pattern

      n:在同一方向重复上一次搜索命令

      N:在反方向上重复上一次搜索命令

      :s/p1/p2/g:将当前行中任何p1均用p2替代

      :n1,n2s/p1/p2/g:将第n1n2行中任何p1均用p2替代

      :g/p1/s//p2/g:将文档中任何p1均用p2替换

      选项配置

      all:列出任何选项配置情况

      term:配置终端类型

      ignorance:在搜索中忽略大小写

      list:显示制表位(Ctrl+I)和行尾标志($)

      number:显示行号

      report:显示由面向行的命令修改过的数目

      terse:显示简短的警告信息

      warn:在转到别的文档时若没保存当前文档则显示NO write信息

      nomagic:允许在搜索模式中,使用前面不带“/”的特别字符

      nowrapscan:禁止vi在搜索到达文档两端时,又从另一端开始

      mesg:允许vi显示其他用户用write写到自己终端上的信息

      最后行方式命令

      :n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下

      :n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下

      :n1,n2 d :将n1行到n2行之间的内容删除

      ::保存当前文档

      :e filename:打开文档filename进行编辑

      :x:保存当前文档并退出

      :q:退出vi

      :q!:不保存文档并退出vi

      :!command:执行shell命令command

      :n1,n2 w!command:将文档中n1行至n2行的内容作为command的输入并执行之,若不指

      定n1n2,则表示将整个文档内容作为command的输入

      :r!command:将命令command的输出结果放到当前行 。


    最新回复(0)