博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux系统学习(二)一Linux基本操作
阅读量:4995 次
发布时间:2019-06-12

本文共 5938 字,大约阅读时间需要 19 分钟。

一、Linux的目录结构

  1.1 Linux的目录结构图

    

  1.2 目录内容

   /:这就是根目录。对你的电脑来说,有且只有一个根目录。所有的东西,我是说所有的东西都是从这里开始。举个例子:当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录。

    bin:存放二进制可执行文件(ls,cat,mkdir等)。也就是说linux中我们经常用到的命令都是这里,所以这些命令都是linux上的可执行文件,类似windows上的exe。这里存放了标准的(或者说是缺省的)linux的工具,比如像“ls”、“vi”还有“more”等等。通常来说,这个目录已经包含在你的“path”系统变量里面了。什么意思呢?就是:当你在终端里输入ls,系统就会去/bin目录下面查找是不是有ls这个程序。

  boot:存放用于系统引导时使用的各种文件。

  dev:存放设备文件。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有Linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序,这一点和,dos操作系统不一样。它实际上是一个访问这些外部设备的端口。我们可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。

   etc: 存放系统配置文件。举个例子:你安装了samba这个套件,当你想要修改samba配置文件的时候,你会发现它们(配置文件)就在/etc/samba目录下。

  home: 存放所有用户文件的根目录。 这里主要存放你的个人数据。具体每个用户的设置文件,用户的桌面文件夹,还有用户的数据都放在这里。每个用户都有自己的用户目录,位置为:/home/用户名。当然,root用户除外。

  lib: 存放跟文件系统中的程序运行所需要的共享库及内核模块。

  opt:额外安装的可选应用程序包所放置的位置。这里主要存放那些可选的程序。你想尝试最新的firefox测试版吗?那就装到/opt目录下吧,这样,当你尝试完,想删掉firefox的时候,你就可以直接删除它,而不影响系统其他任何设置。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。

  举个例子:如果装firefox可以装到/opt/firefox_beta目录下,/opt/firefox_beta目录下面就包含了运行firefox所需要的所有文件、库、数据等等。要删除firefox的时候,你只需删除/opt/firefox_beta目录即可,非常简单

  root: 超级用户目录。这是系统管理员(root user)的目录。对于系统来说,系统管理员就好比是上帝,它能对系统做任何事情,甚至包括删除你的文件。因此,请小心使用root帐号。

  usr:在这个目录下,你可以找到那些不适合放在/bin或/etc目录下的额外的工具。比如像游戏阿,一些打印工具拉等等。/usr目录包含了许多子目录:/usr/bin目录用于存放程序;/usr/share用于存放一些共享的数据,比如音乐文件或者图标等等;/usr/lib目录用于存放那些不能直接运行的,但却是许多程序运行所必需的一些函数库文件。你的软件包管理器(应该是“新立得”吧)会自动帮你管理好/usr目录的。

  proc:   虚拟文件系统,存放当前内存的映射

  sbin:存放二进制可执行文件,只有root才能访问

  tmp:用于存放各种临时文件

  先简单说这么多吧。

 二、Linux系统环境

  2.1 交互通道

    Linux系统默认有6个命令交互通道和一个图形界面交互通道,默认进入到的是图形界面通道,命令交互模式切换:Ctrl+Alt+F1---F6,图形交互通道 Ctrl+Alt+F1。

    图形交互模式有一个terminal(终端)的程序,类似windows下的cmd,它是图形界面交互通道的延伸,并不属于命令交互通道,它要依赖于图形界面。

    图形交互通道如下:

    

      

     可以点着把它拖拽出来方便我们使用

     命令交互通道如下:

    

     输入账号songlin和密码123后就登录进来了,可以在1-6的通道之间来回登录切换,并且账户是同时存在的。

    

  2.2 命令交互模式

  命令提示符:songlin@ubuntu:~$ 

  - songlin:用户名

  - ubuntu :主机名
  - ~ :路径 ,假如当前的路径正好是 该用户存放数据的根目录 ,则显示~  即当前路径是/home/songlin 如下图,pwd显示当前绝对路径,可以看出来。

  

  - $ :用户的类型 $代表普通用户 # 代表 超级用户

   3.3 设置root账户

   默认root账户是没有设置密码的, 可以用sudo passwd 来设置密码。

三、文件权限

  3.1 权限说明

   w :可写   r: 只读  x:可执行  - :无权限

   3.2 字母表示方式

     drwxr-xr-x

     第一个字符:文件的类型 d:文件夹 ;- :普通文件;c:串口文件;l:连接文件

   2-4个字符:该文件的属主用户的权限;

   5-7个字符:与属主用户同一组的其他用户的权限;

   8-10个字符:不同组的其他用户的权限;

  3.3 数字表示方式

   -rw-r--r--:文件的权限为 644

   drwxr-xr-x:目录的权限为 755

四、Linux常用基本命令

  4.1 开关机命令

  logout:注销 

    exit:登出

   shutdown -h 时间 :关机

    -h:表示关机

    时间参数:

      1. now (立马关机)

      2.12.30 (某个时间关机)

      3. 10 (10分钟后关机)

  shutdown -r:重启

    -r : restart 表示重启

  sudo: superuserdo,以超级用户的身份来做。

  比如上边的关命令,比较重要,需要以超级用户的身份来做:sudo shutdown -h now 就可以立马关机了。

  但是也不是所有命令用sudo就可以解决了,比方说一个普通用户,你直接用shutdown -h now 来关机关不了,就加了一个sudo,那肯定也是不行的,得让超级用户授予你这个用户有执行某个命令的权限才行。

  这些配置在 /etc/sudoers 中,有些命令需要配置后授权给哪些用户才可以做的。

  4.2 文件操作命令

      man:manual,手工,帮助手册的,好比windows中的help,例如:man ls,查看ls的帮助文档

    ls:查看目录内容

     -l :查看详细信息

     -a:查看所有文件(包括隐藏的)

    mkdir:创建目录

    cd:切换目录

      -cd .. 加空格 两个点,表示返回上一级目录

      -cd ./xxx 进入当前目录下的xxx目录

      -cd ../xxx  进入上级目录下的xxx目录,以此类推

    touch:创建一个空白的文件,例如:touch aa.txt  创建一个名称为aa.txt的文件

    echo:把内容输入到指定的文件中(控制台,打印机等容器中去),如果存在文件就打开,没有就创建,例如:echo “test”>aa.txt

      >:覆盖模式

      >>:追加模式

    cat、more:查看文件内容

      -cat:查看文件内容,全部显示

      -more:分页查看文件内容,部分显示,按pagedown键可以翻页查看

    cp、mv、rm

      -cp:复制

      -mv:剪切,重命名,移动

        剪切:mv aa.txt  ./test/bb.txt

        重命名:当前的文件目录一样就是重命名,例如:mv aa.txt bb.txt

      -rm:删除文件或文件夹

        -f:假如要删除的文件不存在,也不提示

        -i:删除前进行提示,输入确认之后才删除

        -d:删除空白目录

        -r:递归删除

    wc:统计文件的字符串(行数,单词数,字符数)例如:wc aa.txt

    pwd:打印当前目录的绝对路径

    |:管道命令,上一个命令的输出结果作为下一个命令的输入,例如:ls -l | wc ,统计ls列出的文件你的字符数

    passwd:设置密码,ubuntu中默认root是没有的密码的,要设置面,例如:sudo passwd root

    su:switch user,可以切换到其他用它用户,例如:su root,切换到root用户,会提示你输入密码,但是从root用户切换到其他用户不需要输入密码,因为root是最高权限。

  4.3 系统命令

      stat:查看文件的详细信息,例如:stat aa.txt

     who与whoami

      who:查看在线的用户

      whoami:查看当前自己的用户

    hostname:显示主机名

    uname:显示系统信息

      -a:显示完整的系统信息

    top:显示当前所有进程的信息,每3秒更新一次

    ps:显示当前所有进程的快照

    du:显示文件的大小信息

    df:磁盘的使用情况

    ifconfig:网卡配置信息,类似windows的ipconfig

    ping:检测与目标主机是否连通情况

    kill:杀掉进程,例如:kill 9854,杀掉进程id为9854的进程。

    netstat:网络连接的详细信息

    useradd:创建用户,例如:useadd lijun -d /home/lijun  -s /bin/bash

      -d:指定用户的home路径

      -s:指定改用的shell的解析方式

    sudo cat /etc/passwd:查看用户信息

    itcast:x:1000:1000:UbuntuA,,,:/home/itcast:/bin/bash

      - itcast:用户名
      - x :密码 :已经加密 ,密码存放在 /etc/shadow
      - 1000: 账号id ,userId
      - 1000: 组id ,group id
      - UbuntuA,,, :账号描述
      - /home/itcast :该账号存放文件的默认位置 ~
      - /bin/bash:该用户的shell脚本的解析方式 ,sh 、bash、rbash

  4.4 打包、压缩,解压文件

     windows下的压缩文件:zip、rar

    linux下的压缩文件:gz、bzip、zip(不常用)、

    tar:打包、拆包命令,例如:tar -cxzjvf  <打包后的文件>  <欲打包的目录>

        - c :创建的一个归档文件 ,即打包文件夹

      - x :拆包
      - z :以gzip 格式压缩,默认压缩倍数 6倍 (0-9)
      - j :以bzip2格式压缩
      - v :显示打包或者拆包的文件信息
      - f : 后面紧接一个 归档文件

      打包文件: tar -cvf  news.tar  ./test   把test目录下的所有文件打包成news.tar  

    gzip 、bzip2 压缩与解压

      压缩文件:gzip news.tar
      解压文件:gzip -d news.tar.gz
        -d :解压
    打包及压缩
       打包及压缩:tar -czvf news.tar.gz ./test
          拆包及压解缩:tar -xzvf news.tar.gz

  4.5 软件管理

    windows:.exe

    android:.apk

    redhat:.rpm

    ubuntu:.deb

    1.安装软件

      -dpkg:debian package 离线安装

      安装:sudo -dpkg -i  <文件名>  例如:sudo dpkg -i ./test.deb

      卸载:sudo dpkg -r <包名> 例如:sudo dpkg -r test

      ps:在linux中 用包名来表示一个文件的包名,安装后就会有一个包名,卸载或者查询的时候使用

      -apt-get:advance package tools, 对dpkg命令的升级,在线安装

      安装:sudo apt-get -install <包名>

      卸载:sudo apt-get -remove <包名>

    2. vim编辑器

      vim是一个款linux上的编辑器,好比记事本,但是比记事本要强大

      操作模式:

        一般模式:默认进入的是一般模式,该模式不能编辑文档,只能查看,按i(insert)进入插入模式

        编辑模式:该模式可以编辑文档,按esc退出插入模式,进入到一般模式

        命令模式:在一般模式中,按:(冒号)进入命令模式

          -q:安全退出,当没有操作该文档时,则直接q退出vim

          -q!:当修改了内容,但是不想保存,则q!强制退出

          -wq:保存退出

          -set number 显示行号

          -set nonumber 取消行号显示

 五、总结

  这篇文章简单介绍了linux上的基本操作,由于linux没有图形,所以熟悉这些命令是必须的,作为入门,这篇足够了,要掌握这些命令,还是需要自己动手多敲命令,不断的重复才是最好的办法。

转载于:https://www.cnblogs.com/flaming/p/8111150.html

你可能感兴趣的文章
高二小假期集训—D5
查看>>
EasyUI easyui-combobox 重复发送请求
查看>>
memcached-repcached
查看>>
[转]CentOS 5.3通过yum升级php到最新版本的方法
查看>>
UVA 11235 - Frequent values RMQ的应用
查看>>
大数据日志采集系统
查看>>
java 堆调优
查看>>
linux 安装JDK
查看>>
JAVA调用CMD命令
查看>>
weblogic的安装
查看>>
SSM框架中,controller的action返回参数给vue.js
查看>>
Mysql 基础3
查看>>
smartctl工具应用(转载整理)
查看>>
控件数据绑定总结
查看>>
HTTP协议
查看>>
Vue 框架-09-初识组件的应用
查看>>
.Net core 在类库中获取配置文件Appsettings中的值
查看>>
[转载]sublime用法精华
查看>>
《甄嬛传》影评(整理)
查看>>
数的位数
查看>>