前言,不论是原生APP(Android&IOS),还是大型架构级基础环境(.NET&J2EE,或LAMP阵营等),

基本都不可避免的涉及到Linux(Unix),故还是觉得有必要把自己的一些相关知识归纳下。。

PS,Linux(Unix)更偏向程序(命令),而不是操作(界面)的系统。

给我感觉就像做事风格:踏实稳重,也有点简单实在了,当然地就有点‘土’------不过我喜欢!哈哈~

首先,还是Linux系统一点情况介绍,这个有点。。。

Linux诞生的故事就不说了,其实就是用c山寨unix,也可认为Liunx衍生至unix。所以Linux与unix的基础命令几乎一模一样的,

最明显的就是,IOS(越狱后的Unix)命令几乎和Android(root后的Linux)是一个鸟语的---所以下面说道Liunx可等同unix。

不过,Liunx是开源的。当然地,和windows一样,作为操作系统必然有多任务、多用户等特点,

以及包含自己系统运行的内核(核心程序)、文件系统(ext、nfs等)、还有调用的接口(shell、命令&图形界面、应用程序等)。

与windows不同的:目录只有一个盘(根目录)、没有图形化的界面(当然也能用X-windows集成)、可移植等。

Linux有N多版本,其中以偏桌面的Ubuntu(源于Debian)与偏服务器的CentOS(源于redhat)为主。

这里也提下国内多用CentOS的几个原因(本人比较认同的):1.国内网络不行;2.基本教材、资料都是redhat的;3.发布版本稳定性。

接着,就是Linux目录结构,这是个基础,不过~其实Linux就是个小基础的东四。----下面用Ubuntu举例,看图

再者,就是Linux的常用命令,

1.文件目录:mkdir 创建目录;touch 生成文件;echo 生成待内容文件;cat/tac 现实文件内存

      rm 删除文件;cp 复杂文件;mv 移动文件;find 查找文件;grep 查找字符串

      wc 统计文字;pwd 当前目录;tree 显示目录树;ln 连接文件;ls、cd。。。

2.系统管理:stat 显示指定文件信息;netstat 网络状态;man 命令帮助;

      who、w 在线用户;whoami 用户自身身份;ifconfig 网络端口;

      hostname 显示主机名;uname 系统信息; top 系统资源使用信息(性能优化常用!);ps 瞬时进程;ping、clear、kill。。。

还有,就是有些常用操作,如VIM,软件包管理(解/压缩),用户、文件(夹)权限,SSH等,

  1.VIM:编辑模式-》插入模式(输入i)-》命令模式(输入:)

     几个保存命令:q直退;wq保退;q!强退;w file 保存成其他文件

  2.压缩/解压文件、文件夹:

     gzip(后缀gz)与bzip2(后缀bz2)

     tar(可完全替换上两个) [-cxzjvf],c压缩&x解压;z用gzip压缩&j用bzip2压缩;v显示压缩文件;f压缩文档

  3.软件包管理:

     dpkg软件包(.deb后缀文件,等同redhat的.rpm后缀文件): sudo dpkg -i pkg_file.deb 安装;sudo dpkg -r pkg_file 卸载

     APT自动处理依赖文件:sudo apt-get install pkgname 安装;sudo apt-get remove pkgename 卸载;

                sudo apt-get update 获取包列表;sudo apt-get upgrade 升级更新;

  4.用户、文件(夹)权限:(ls -l 显示)

     su 切换用户;id 显示用户id;groups显示用户组;

     chmod 更改操作权限  [u 属主 g 所属组用户 o 其他用户 a 所有用户][+ 加权限 – 减权限 =加权限同时将原有权限删除] [rwx] 文件或目录名,如 chmod g+w file。

     chown&chgrp 更改属主及属组 [ -R ] 属主 [ :所属组 ] { 文件|文件夹},如:chown -R jiyilee:build /tmp/src, chgrp jiyilee test.txt。

  5.SSH: 安全shell,远程连接登录用到的,其实就是个安全协议,里面用到一些加密算法,不过一般都是用就行的。常用到一些工具,如putty、WinSCP等

最后,就是个shell,也就是linux下的脚本,类似windows的bat,有些js&Python等脚本特点。

其实蛮简单的语言(基本能称得上),有变量、函数、循环、控制等,一般起码要能看懂及作小修改就行。

总结,用惯了windows就如习惯了C#的简洁和灵活一样,再看java就不顺了,再用linux就不感冒,其实习惯就好~都是个操作系统,都是个开发语言而已。。。

真正热爱技术的技术人员不应该偏执某一技术,可专注不应狭隘!所以玩.net也好,java也罢,

最好了解下Linux,了解下DBA与运维的也是很有必要的,了解大数据吧,了解Python,了解管理,了解...

当然不可能都用到,也不是要面面俱到、盲目追新,更不可能样样精!只是更好的都需要对比和借鉴,一旦需要时可以很快上手、不至于傻乎乎~

技术是纯的、可确定的(不像管理等),应无界限,需点大气才是~~~

对Linux(Unix)的基础知识归纳的更多相关文章

  1. 1)Linux程序设计入门--基础知识

    )Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makef ...

  2. linux运维基础知识

    linux运维基础知识大全 一,序言 每一个微不足道的知识,也是未来的铺垫.每一份工作的薪资职位,也是曾经努力的结果. 二,服务器 1,运维人员工作职责: 1)保证数据不丢失:2)保证服务器24小时运 ...

  3. linux web服务基础知识,dns

    #web服务基础知识c/s 客户端/服务器b/s 浏览器/服务器 nginx   >   web  server  服务端浏览器  >    web  client  客户端 #dns解析 ...

  4. [No000043]学习Linux操作系统必备基础知识

    Linux操作系统概述 Q1.什么是GNU?Linux与GNU有什么关系? A: 1)GNU是GNU is Not Unix的递归缩写,是自由软件基金会(Free Software Foundatio ...

  5. [转帖] Linux运维基础知识学习内容

    原作者地址:https://www.cnblogs.com/chenshoubiao/p/4793487.html 最近在学习 linux  对简单的命令有所掌握 但是 复杂的脚本 shell pyt ...

  6. 关于linux的一些基础知识

    一.基础 1.linux所有内容以文件形式保存,包括硬件. 2.linux 不区分扩展名,靠权限区分.   #但是,约定 .sh脚本文件  .conf配置文件. 3.-rw-r--r--        ...

  7. Linux文件权限基础知识

    一.文件权限概述 Linux中每个文件或目录都有一组一组9个基础权限位,每三位字符被分为一组,他们分别是属主权限位(占三个字符).用户组权限位(占三个字符).其他用户权限位(占三个字符).比如rwxr ...

  8. Linux磁盘系统基础知识(转载)

    From:http://www.liusuping.com/ubuntu-linux/linux-disk-basic.html 在Linux系统下对于IDE硬盘,每块盘有一个设备名:对应于主板的四个 ...

  9. 最全 Linux 磁盘管理基础知识全汇总

    一.存储设备的挂载和卸载 存储设备的挂载和卸载常用操作命令:fdisk  -l.df.du.mount.umount. fdisk  -l 命令 1.作用 查看所有硬盘的分区信息,包括没有挂上的分区和 ...

随机推荐

  1. java后台调用url无协议

    url格式不正确,可能有"www.baidu.com"    "这个不能有 // 下载pdf public void downpdf(String URL, String ...

  2. 用Qt Creator 对 leveldb 进行简单的读写

    #include <iostream> #include <string> #include <leveldb/db.h> #include <boost/l ...

  3. 时间序列分析之ARIMA模型预测__R篇

    http://www.cnblogs.com/bicoffee/p/3838049.html

  4. Fisher vector for image classification

    http://files.cnblogs.com/files/sylar120/fisher_vector.rar 拿各个参数上的偏导作为特征

  5. thinkPHP--SQL连贯操作

    一.连贯入门 连贯操作使用起来非常简单,比如查找到 id 为 1,2,3,4 中按照创建时间的倒序的前两 位. //连贯操作入门 $user = M('User'); var_dump($user-& ...

  6. py-faster-rcnn(running the demo): ubuntu14.04+caffe+cuda7.5+cudnn5.1.3+python2.7环境搭建记录

    第一次写博客,以此纪念这几天安装caffe,跑faster-rcnn的血泪史.在此特别感谢网络各路大神,来自全球各地,让我能从中汲取营养,吸取经验,总结规律. faster-rcnn分为matlab版 ...

  7. mxnet实战系列(一)入门与跑mnist数据集

    最近在摸mxnet和tensorflow.两个我都搭起来了.tensorflow跑了不少代码,总的来说用得比较顺畅,文档很丰富,api熟悉熟悉写代码没什么问题. 今天把两个平台做了一下对比.同是跑mn ...

  8. JavaScript中的枚举

    在JavaScript目前的版本中,没有枚举这个概念(当然,ECMA-262第三版中已经将enum作为关键字保留). 然而,如同JavaScript中没有class一样,但我们仍然可以通过间接的方式- ...

  9. openssl使用多种方法签名、自签名

    1.自建CA 自建CA的机制:1.生成私钥2.创建证书请求,在创建证书请求过程中由于需要提供公钥,而公钥来源于私钥,所以也需要指定私钥来创建证书请求,而实际上这里提供私钥的作用就是提取其中的公钥,这一 ...

  10. VC++ 中CDC与HDC的区别以及二者之间的转换

    MFC类的前缀都是C开头的  H开头的大多数是句柄  这是为了助记,是编程读\写代码的好的习惯.  CDC中所有MFC的DC的基类.常用的CClientDC dc(this);就是CDC的子类(或称派 ...