刚学习,嘿嘿,求指导


关于linux:如果你是小白,linux快速入门技术值得你收藏?

zhuanlan.zhihu.com图标

1、不要以根用户登录

这是你首先应该注意和遵守的。以前我们可能已经习惯了Windows,我们一直以为许可权越高越好,所以我们喜欢以管理员帐户登录。但是这也许是Windows经常被病毒骚扰和不安全的重要原因,现在太多人都在用根用户登录。

许可权越高责任越大,拥有管理员许可权你需要谨慎对待你所做的任何事情,但是错误还是不可避免。我记得我最先使用的是Suse Linux,有很多事项需要管理但是没有图像用户界面我不知道如何做,于是我天真的注销并登录到了根用户的图形界面。根用户图形界面的默认壁纸是一排排的高亮地雷。这些符号在我脑海里盘旋,我很小心没有终于没有做错什么。

那么以根用户登录有那些危险?

你可以想像你在没有保护网的情况下打秋千,会不会感到害怕?这和你以根用户登录的道理是一样的,你会不经意间毁掉你的系统。

你可能会不小心运行恶意软体。通常在根用户模式下任何程序的启动都默认给予所有许可权的。

如果你的系统有安全漏洞没有修补,你就可能被别人完全控制。

这是使用Unix的惯例,除非必须那么不要轻易在根用户下运行任何东西。如果一个不是自己触发的程序请求根用户许可权,那么你就要小心了。

通常,我们不必登录根用户界面,下面是几条技巧:

使用「sudo」或「su」命令,并在你完成管理时退出

如果你不知道如何使用命令行完成这些,你可以使用「gksu」或「kdesu」。比如,按 Alt+F2并打出「gksu nautilus」,并在你完成时马上结束程序

2、合理的命名你的文件

Linux环境下,你可以按照你的意愿命名文件,但是以下两点是不允许的:1)「/」是根目录专用的;2)不要使用无效字元。其它的在技术上都是可以的,但是为了避免以后的麻烦这里有几点经验你可以遵守:

经验上,只使用字母、数字、连接符(-)和下划线(_)

避免使用美元符($),括弧和百分号(%)等特殊字元,这些字元对于shell有著特殊意义,可能会引起冲突

避免使用空格,在终端上处理含有空格的文件是很愚蠢的。你可以用连接符或下划线来代替空格。

这些已经基本上成为我的习惯,并且我在使用Windows和MAC时也不自觉的遵守这些准则。

3、将你的home目录放在一个独立的分区上

这样做会给你很大的灵活性。将home目录放在一个独立的分区上,可以在你重装系统甚至升级你的整个版本而不会丢失你的数据和个人设置。你可以在根目录下重新设置你所需要的而保留home分区。现在你可以将你需要的随意分类而不必担心的数据和个人设置,你可以随时使用它们。

如果碰巧在你安装系统之后才懂得这一点,不要失望。你可以按照Carthik在ubantu Blog上的一片名为「Move /home to it』s own partition」的指导道一步步的完成。

4、合理的灾难管理

Linux是比较强大和稳定的,但是任何系统都会崩溃。在你CTRL-ALT-DEL,重启之前,你应该学会如何处理你遇到的事故。你需要知道如何在不重启的情况下轻松恢复你的系统。我个人认为这种情况分为几个不同的层次,如果前一步不奏效的话请转向下一步:

我将「强制关闭」程序放在我的任务栏上,如果哪个程序出现问题可以单击「强制关闭」图标并结束该程序

如果上一步不奏效,调用终端,用「ps -A」,记下那个出问题程序的进程号,结束它

使用「killall」命令,比如「killall firefox-bin」

如果整个图形界面都冻结,你已经不可能调用终端,按CTRL-ALT-F1,这样可以转到另一个终端,这样你就可以使用步骤2和3来结束出问题的程序

还不行的话,你可以使用CTRL-ALT-Backspace组合重启你的图形界面,但是要注意的是,这样会结束你正在运行的GUI程序

调用CTRL-ALT-F1再使用CTRL+ALT+DEL这样不会立即重启你的系统,只是按照正常模式重启,所以是安全的(假定你想要重启并且CTRL-ALT-F1可用)。

如果这一切都不管用,也不用记著按强制重启按钮,尝试Raise a Skinny Elephant

5、主动尝试

你可能对朋友给你设置设计的当前版本和配置很满意,这适合你。这很好,但是可能会有比这更好的。为什么不尝试下Linux和开源的灵活性和丰富性呢?不要害怕尝试不同的程序,图形管理和桌面。实验直到你找到最适合你的。你可以这样想,你现在居住在世界上最好的地方,但是环球旅行也不会有什么坏处的?或许说不定你还可以找到一个更好的居住地,就算不能,你旅行的时间也值得好好品味,你对其它国家,它们的人和风俗,思考方式了解的更多,最终说不定你会喜欢上这样的尝试。你尝试的任何新事物都会增加你的学识,一年左右的时间你将会对Linux和开源世界有一个很好的把握。

我个人曾尝试过至少10种分配方式,4种桌面和五种桌面管理。我最近的文章《 Etymology of A Distro》使我对更多的分配感兴趣,象Zenwalk, Foresight和 Sabayon等。朋友,主动尝试,这对你有好处。

在你尝试之前,你可以参考以下几点:

设置好你感觉最舒服的系统,因为你需要一个时刻工作的系统。这样你就可以按照下面的几点进行尝试

你可以利用虚拟机来完成。安装一个Vmware或Virtualbox,用它们来做测试

如果你不知道如何运用虚拟机,你可以设置一个独立分区来尝试

最好的,你可以用一个设置好的PC,再有一个当作测试用。这样你就可以随心所欲的进行尝试

6、熟悉使用你的命令行

虽然我不提倡你一定要学习命令行,有太多的文章一直强调学习命令行的重要性。这里我假设你已经知道他的重要性并且已经知道怎样用它处理一些简单的管理任务。你可以按照指导书和手册做相应的配置。但是不要一味的复制和粘贴。就是说,不止不加思考的执行命令许多有自由天性的人劝诫你要尽量深刻的理解每条命令行的含义,它能做什么。为什么手册上这样做的,而不是那样做?理解你所做步骤的基本原理。

过了一段时间你就会感觉你已经能很好的运用它了。

最后你会发现它仅仅是种伪装的语言。每条命令可能只是一些词语的首字母,或一个单词的缩写。你希望你的狗理解「Spike fetch ball」这样的长句,为什么不尝试理解下「sudo mv /file1 /file2」那?

7、为你的用武之地做些准备

我有过很多这样的经历,当有个朋友请求我在他的电脑上做些东西,但是由于他所选择的操作系统会出现糗事。有时候我有急事但是仅有的电脑有很挫的操作系统。不必痛苦,随身戴上你的linux系统,不管是存储在U盘或CD上。有相当多的linux版本很方便的,象Knoppix, DSL和 Puppy Linux等.


首先一定要明确自己学Linux的目的。不同的目的有不同的学习方法和策略。下面列举几种常见的目的和对应的学习方法。

  • 需要用Linux完成科研、开发等工作。除非这些工作本身是关于操作系统的,否则不需要深入学习Linux内核、复杂的系统配置等等。只需要学习基本的命令行操作,以及和自己工作相关的部分。如果有条件,尽量使用开箱即用的环境,而不要浪费时间在手动配环境上。
  • 需要学习Linux运维。这种就需要深入学习系统配置和管理,以及相关的网路技术、自动化技术等等。并且针对运维平台本身的需求扩展自己的技能集。比如如何使用容器技术部署微服务等等。
  • 需要日常使用Linux桌面系统。一开始可以先尝试使用主流的桌面系统,比如Ubuntu. 先感受一下在Linux桌面系统上会遇到哪些日常问题,然后找找解决方案。熟练之后可以慢慢探索开源软体的合作模式,会编程的话可以参与一些开源软体的工作。不会特定软体的编程语言也可以参与翻译文档、答复讨论版等等。

特别强调一下,市面上有很多教材和培训机构都是针对运维工作来教Linux的,如果你学Linux不是为了从事运维工作,没必要从那些教材和培训机构里学。


很多人想学习Linux,却不知道怎么著手,甚至不知道Linux有哪些方向,跟题主一样迷茫。基于此,我特地写了篇文章介绍Linux方向性问题,没想到一不小心成了爆款:

到什么程度才叫精通 Linux??

www.zhihu.com图标

看完这个回答,相信很多人至少知道了目前 Linux 从业者所从事的几个方向,对于方向选择有个大概的认知。

自我介绍一下。我是良许,本科及硕士所学专业却是机械,毕业后从零开始自学转行 IT,1 年后被世界 500 强外企所录用,目前是 Linux 工程师

本文将根据我的从业经验及与同行大佬的交流,介绍一些Linux学习方法,并且在文末赠送一些Linux书籍的电子版及及视频教程等资源,希望对大家有帮助!

书籍篇

对于Linux书籍的推荐,我特地写了几个回答来介绍,这里就不重复贴回答了:

有没有学习Linux比较好的入门书籍?

求推荐学习linux命令的书籍?

有没有比《鸟哥的Linux私房菜》更好的书?

嵌入式Linux有哪些好书推荐?

资源篇

不管学习什么技术,资源都是必不可少的。想当年,我自学转行,靠的就是大量的优质资源。优质资源会助你一臂之力,让你快速入门。

当然,我也整理了另外一些不错的资源,写在这个回答里了,大家可以看看:

有哪些好的Linux学习资源??

www.zhihu.com图标

想进大厂的同学,一定要好好学演算法,这是面试必备的。这里准备了一份 BAT 大佬总结的 LeetCode 刷题宝典,很多人靠它们进了大厂。

冒死分享,面试必备!LeetCode 刷题神器,看完 BAT 随你挑!?

t.1yb.co图标

如何入门并深入学习Linux

1. Linux学习路径

Linux应用开发自学之路这篇文章介绍了我从零开始自学转行Linux的完整过程,被很多大号转载,并且影响了很多人,大家可以参考。

自学简单编程可行吗?这篇文章更详细介绍了我是如何自学转行的,包括心路历程,转行过程,转行中需要注意的地方,以及更高效转行成功的方法。

Linux 思维导图整理(建议收藏)这是一个技术大佬整理的Linux思维导图,包括:Linux学习路径,Linux基础入门,Linux内核学习路线,Linux命令参考,Linux命令速查等等。这份导图虽然不是100%全面,但如果能够将里面全部内容掌握下来,你也是个高手了。

2. Linux环境搭建

2.1 虚拟机安装与配置

既然要学习Linux那肯定需要一个Linux环境。那么环境搭建有两个选择:1. 安装虚拟机;2. 直接在实体机上安装。对于这两个选择,我更倾向于第1个,因为前期学习一些命令及基础知识,直接在虚拟机上进行就可以了。

手把手教你安装Linux虚拟机

手把手教你配置Linux虚拟机

虚拟机常用的有两种:Vmware,VirtualBox。Vmware功能更强大,但是是收费的。而VirtualBox虽然功能不及Vmware,但对于新手完全够用了。这两篇文章所使用的是Wmare,手把手教你安装并配置虚拟机,图文并茂,一路跟下来就可以安装并配置好虚拟机,完成最基本的搭建。

2.2 主机与虚拟机文件共享

虚拟机安装好之后,还有一项很重要的工作要做,那就是实现虚拟机与主机的互通,也就是互相共享文件。实现文件共享有很多方式,一般而言有以下几种:

  • 使用 FTP 协议实现文件共享
  • 使用 samba 协议实现文件共享

特别地,对于Vmware有一套自己的专属文件共享方式,VirtualBox应该也有,但我没去研究过。对于Windows与Linux之间的文件共享,我们一般会用到一款很强大的共享工具——WinSCP,当然还有很多类似工具,比如Xftp,FileZilla。这些工具其实都是基于FTP协议,使用起来也大同小异,都非常方便。

2.3 终端工具

作为一名Linux工程师,不管是运维还是开发,我们很多时间会是在命令行下工作。我一般是把虚拟机打开著,然后使用终端工具远程到虚拟机进行操作。这里推荐一款很强大的终端工具——MobaXterm,它的功能十分强大,界面也非常友好,我用上一次就爱不释手。

当然还有很多好用的终端工具,比如XShell、secureCRT、Putty、telnet等,选择一个自己最喜欢的工具即可。

2.4 编程工具

如果你是一名Linux开发人员,那你的工作肯定少不了编程。我一般的作法是,在Window上使用代码编辑工具编好代码,然后在Linux下编译。我经常使用两个工具:Notepad++Sourceinsight

使用notepad++远程编辑虚拟机文档

代码阅读神器——Sourceinsight

当然我们也可以直接在Linux下写代码,在Linux下编译。Linux下写代码也有很多软体,常用的比如最性感的编辑器——Sublime Text。

想进大厂的同学,一定要好好学演算法,这是面试必备的。这里准备了一份 BAT 大佬总结的 LeetCode 刷题宝典,很多人靠它们进了大厂。

冒死分享,面试必备!LeetCode 刷题神器,看完 BAT 随你挑!?

t.1yb.co图标

3. Linux基础知识

Linux环境搭建完毕之后,我们就可以正式进入到Linux的学习中来。

3.1 Linux系统架构

学习Linux,我们肯定要知道Linux的系统架构是怎样的。一般而言,Linux是由以下几部分构成:

  • 内核
  • bootloader
  • 文件系统
  • Shell
  • 应用程序

内核是Linux系统的核心,它往下直接与硬体打交道,向上连接应用程序。它是由Linux社区来共同维护,其中Linus是核心人物。内核主要是由C语言及少量汇编语言编写而成,是最著名的一个开源项目之一。内核的源码在这里,但对于初学者,就别指望能把它看懂。

初学者只要了解一些内核的基本架构即可,后期可以再进一步深入学习。网路上有一张非常经典的内核架构图,可以借助来理解内核。

Bootloader就是一个单片机程序,用来引导系统启动。这个程序比较简单,有些高手甚至自己手写了bootloader程序。

Linux文件系统有ext3、ext4等,而windows 有 fat32 、ntfs等。做底层开发的工程师需要深入了解,在此不赘述。

3.2 Shell

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种介面(命令解释器)。它的基本作用如下图示:

对于Shell的使用,有非常多坑,初学者一定要规避。在此,我也找了两篇Shell面试题,以帮助大家学习进步:

必会的 24 道 Shell 脚本面试题

10 个实战与面试【常用 Shell 脚本】编写

3.3 Vim

Vim是Linux里非常重要的一个编辑器,但是,它比较难,对于初学者非常不友好,号称上古神器。Vim有很多命令,所以我们首先要学习Vim的基本命令

如果你觉得Vim不好学,那么我介绍一款提高Vim水平的游戏。这款游戏灵感来自PacMan,让你使用Vim的命令去控制主角躲避怪物。把这款游戏玩熟练了,你的Vim水平也上了很大一个台阶。

当然如果是官方标配版的Vim,那其实还是非常不好用的。好在Vim社区有很多大神,他们开发了很多实用的插件,让Vim用起来不再那么难用,比如以下三款非常实用的插件:

Vim的三款实用插件

3.4 其它

除了以上3点,Linux系统还有很多基础知识,这些知识很多很细,没办法一篇文章讲完,需要在实践中慢慢学习。

比如Linux系统的目录结构,它是一个树状结构,跟Windows系统有本质的区别。

还有,Linux有很多快捷键,掌握了这些快捷键会为我们提高不少效率。

虚拟终端快捷键

4. Linux命令

众所周知,Linux有非常多命令,但是,刚开始学Linux千万别贪多,别想著一口吃成大胖子。对于普通人而言,先学会一些最基本的命令,再去拓展其它更高阶的命令。

Linux命令基本格式及目录处理命令

超好用的Unix/Linux 命令技巧 大神为你详细解读

给Linux小白看的命令行极简教程

Linux的10个最危险的命令

常用的命令可能就二三十个,当你把这二三十个命令都用得非常熟之后,你才算刚入门。当然,你别小看这些基础命令,很多基础命令有著自己的高级用法,当你把高级用法都玩透了,你就开始慢慢脱离小白了。

5分钟 more 命令从入门到精通

Linux下 ls 命令的高级用法8例

Linux 下你所不知道的 7 个 SSH 命令用法

5. Linux神器

在 Linux 下工作,有一些工具可能大大提高你的工作效率。有些工具大家可能耳熟能详,但还有更多神器可能连听都没听说过。

比如我们程序员经常需要绘制一些流程图,我们可以使用一些诸如EA之类的绘图工具,但这类工具很多都很庞大,而且比较难学。在Linux下其实我们可以使用dot工具简单高效绘图!

程序员轻松绘图神器

再如,我们如果和同事协作开发,想要把自己的操作过程录制下来,发给同事然后同事继续你的工作。或者,别人使用你的电脑,你想把他的操作记录下来,以免后期争议。这时,Script命令就派上用场了。

Linux终端里的记录器

当然还有很多非常实用的神器,限于篇幅就不一一列举了。

如何高效回退到特定层级目录?

Linux任务的前后台管理

Linux下如何高效切换目录?

6. Linux趣应用

工作都是乏味的,我们要在工作中找到一些乐趣。作为一个免费的操作系统,大量的爱好者为 Linux 写了很多很有趣的应用,不仅可以帮助我们提高工作效率,而且还可以给我们枯燥的生活带来乐趣。

Linux 终端给人的感觉就是黑漆漆一片,里面只能显示一些字元,而从来没见过显示图片的,但是,实际上,Linux 终端除了显示字元外,当然也可以显示图片(然后就可以用来看女神照片)。那是怎么实现的呢?这篇文章有答案:

什么?Linux 终端也可以用来看女神照片?

人这一辈子,真的是非常不容易:读书时,被老师、同学嘲笑,工作时,被老板、同事嘲笑,就连出去撸个串儿,还可能被朋友嘲笑……这些也就算了,毕竟大家还都是同类,都是活生生的人。但是,你如果被 Linux 终端给嘲笑了,你的内心会是什么感受?

说出来也许你不信,我被 Linux 终端嘲笑了…….

[alvin@VM_0_16_centos ~]$ sldkf

Why are you doing this to me?!

-bash: sldkf: command not found
[alvin@VM_0_16_centos ~]$ iehf

You are not as bad as people say, you are much, much worse.

-bash: iehf: command not found
[alvin@VM_0_16_centos ~]$ sdfas

How many times do I have to flush before you go away?

-bash: sdfas: command not found

Git 是用来做啥的?想必码农朋友都知道,Git 是版本控制软体,是软体开发过程中团队协作不可或缺的软体。但是,作为版本控制软体的 Git ,能跟聊天工具扯上关系吗?这二者似乎毫无关系,但脑洞大开的外国朋友活生生将 Git 改造成了一个聊天工具!

Git 居然可以用来跟女神聊天?

等等类似于此类的应用,这些应用虽然不是学习过程中的必需品,但却可以给我们的学习生活带来很多乐趣!

7. Git

作为程序员,肯定不是离开Git。Git是版本控制软体,是软体开发过程中团队协作不可或缺的软体。但可悲的是,在学校里很少会有Git相关课程,所以很多大学生都不知道有Git这个东西。

对于Git的入门,建议看 Pro Git 这本书,它是一本免费开源书,在它的官网上就可以直接在线阅读。

https://git-scm.com/book/zh/v2

Git虽然命令也很多,但基本的常用的也没几个。在使用Git的过程中,我们也要注意一些 Git 提交规范

如何高效的使用 Git

学会这两件事,让你成为 Git 老司机

你可能不太会用的 10 个 Git 命令

使用Git,就不得不提到GitHub。GitHub是一个面向开源及私有软体项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。由于开发人员多为男性,故又名GayHub……

很多小伙伴知道使用Git,却不知道如何在GitHub上与其他小伙伴一起协作,为此我特地写了一篇文章来介绍GitHub的协作方法

如何在GitHub上大显身手?

除此之外,还有你必须收藏的 GitHub 技巧

后记

Linux博大精深,绝非一篇文章就能讲透的。本文根据自己的一些经验,介绍了一些方向性的东西。大家如果按著这些方向去学习,也一定会成为大神!


最后,最近很多小伙伴找我要Linux学习路线图,于是我根据自己的经验,利用业余时间熬夜肝了一个月,整理了一份电子书。无论你是面试还是自我提升,相信都会对你有帮助!目录如下:

免费送给大家,只求大家金指给我点个赞!

电子书 | Linux开发学习路线图

也希望有小伙伴能加入我,把这份电子书做得更完美!

另外,想进大厂的同学,一定要好好学演算法,这是面试必备的。这里准备了一份 BAT 大佬总结的 LeetCode 刷题宝典,很多人靠它们进了大厂。

冒死分享,面试必备!LeetCode 刷题神器,看完 BAT 随你挑!?

t.1yb.co图标

有收获?希望老铁们来个三连击,给更多的人看到这篇文章

推荐阅读:

  • 干货 | 程序员进阶架构师必备资源免费送
  • 神器 | 支持搜索的资源网站


1、安装Linux系统

由于Linux的开源性,我们可以有很多选择,常见的有Ubuntu,centos,Fedora, Debian ,RedhatEnterpriseLinux ,SUSE OpenSUSE,Mindriva, Gentoo, Arch , Slackware等等这些主流发行版几乎占据了大多份额。这里我选择的是Ubuntu16.04

2、预装软体

当你成功安装了Linux系统后,你会发现桌面像这样

系统给你预装了一些软体,但是这不一定你用的习惯,首当其冲就是输入法啦!没有习惯的搜狗输入法,我们还怎么愉快的玩耍,故此第一个安装的软体肯定就是输入法了。针对次,搜狗推出了针对Linux版本,下载链接:搜狗输入法 for linux

安装教程可以参考https://blog.csdn.net/u013894834/article/details/60357071或https://blog.csdn.net/iamplane/article/details/70447517。

还有我们经常办公用的QQ怎么办,毕竟我们习惯了打开电脑登上QQ的生活,可是小马哥没有针对Linux系统开发对应版本的QQ,这可如何是好。这时候广大的人民群众站起来了,我们自己解决问题,大牛们开发出来了Wine-QQ与Wine-TIM的Appimage版本,下载安装链接https://github.com/Albert337/Wine-QQ-TIM,下载后你会发现是这样的

不是我们常见的后缀exe格式哦,而是APPiMage格式,想要运行它,我们先要修改一下他的许可权,选中右键点击属性,在许可权那一页,勾选允许作为程序执行文件,效果如下图:

然后我们双击它后我们就可以见到我们经典的登录界面啦。

3、使用技巧

在Linux下我们最常见的就是在终端进行一些操作,打开终端的方式有很多种,滑鼠右键选择打开终端,或者快捷键Ctrl+Alt+T,接下来我们介绍一下Linux常用的命令:

(1)查看目录:ls用于查看当前路径下所有文件信息

补:

查看linux文件的许可权:ls -l 文件名称(可以简单输入ll也行)

查看linux文件夹的许可权:ls -ld 文件夹名称(所在目录)

(2)创建目录:mkdir 创建文件夹

(3)切换目录:cd 切换到指定文件

(4)复制文件、目录:cp(源文件)(目标件)

cp-r 可以指定拷贝指定的任意目录(包括子目录和文件)

cp- f 删除已经存在的目标文件而不提示。

cp- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是互动式拷贝。

(4)删除文件、目录:rm (文件或目录)

rm-rf可以指定删除任意的目录或文件,慎用。

rm dir删除空文件夹

(5)重命名或剪切文件:mv(文件或目录名/旧地址)(新名字/新地址)

6)简单的编辑器nano

nano temp.py 会生成一个脚本,进入编辑框

在编辑完后按住Ctrl+x离开保存即可。

(7)读取命令cat

cat有两种用法,一是将文件内容全部显示在屏幕上 cat temp.py

二是将一个文件内容放到另一个文件内,相当于cp命令 cattemp.py temp1.py

****对于文件的读取操作等,还可以借助vim编辑器或gedit编辑器,

4、常见文件的打开方式

  • deb包-是Ubuntu的专利,在Ubuntu中双击deb包就可以进入自动安装进程 dpkg -i xxx.deb即可
  • rpm包-在红帽LINUX、SUSE、Fedora可以直接进行安装,但在Ubuntu中却无法识别
  • whl包:已经编译的包,类似于exe文件,先安装wheel包后,再利用pip install xx.whl来安装即可。
  • tar包:源文件,只是打包在一起,还没有编译,在所有的Linux版本中都能使用,用归档管理器提取。

同样针对.tar包可以利用 tar –xvf 解压 压缩:tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg

  • tar.gz包:源文件,压缩并打包在一起,还没有编译,在所有的Linux版本中都能使用,用归档管理器提取。

同样针对.tar.gz包可以利用 tar –zxvf 解压 压缩:tar –czf jpg.tar.gz *.jpg //生成一个gzip压缩过的包,命名为 .

tar命令

  解包:tar -zxvf FileName.tar

  打包:tar -czvf FileName.tar DirName

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

压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ...

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

注:

1.关于Linux下的许可权不够问题,我们在命令前面加上sudo即可

2.针对切换命令cd,有一些默认小命令 cd/ 表示进入根目录 ;cd或cd~进入用户home目录;cd-表示进入上一次访问的目录,相当于back;cd .. 进入上级目录

3.pwd结果显示当前目录或者ctrl+l可以快速查看路径

4.ifconfig显示系统的网路IP信息

5.man显示某个命令的manual(指南)

6.dpkg -l可以查看电脑上安装的软体信息

7.对函数或包不熟悉时,用help(函数、包)查看详细信息

8.xdg-open加上路径会以默认方式打开文件

9.sudo chmod -(代表类型)×××(所有者)×××(组用户)×××(其他用户)可以修改文件及文件夹属性。

10.修改主机名 sudo hostnamectl set-hostname &

11.修改密码 passwd(当前用户),passwd user(指定用户)

12.whereis命令只能用于程序名的搜索,而且只搜索二进位文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。

和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个资料库文件中,当使用whereis和下面即将介绍的locate时,会从资料库中查找数据,而不是像find命令那样,通过遍历硬碟来查找,效率自然会很高。

13.新建用户的命令不同,第一种是useradd, 第二种是adduser。相对应的,如果要删除用户,第一种的命令为userdel, 第二种是deluser,推荐使用第二种,这样会自动赋予sudo许可权。同时进行用户切换命令可用:切换到root(sudo su 或su - root)


推荐阅读:
相关文章