2019-10-20 李宗盛 linux

Linux

Linux简介(了解)

Linux介绍:Linux是类UNIX计算机的统称

                Linux操作系统的内核也是Linux

                Linux是由芬兰大学生Linux Torvalds于1991年编写

                Linux这个词本身只是表示Linux内核,但实际上人们已经习惯用Linux来形容整个基于Linux内核并且使用gun工程各种工具和数据库的操作系统

Linux发行版组成

Linux内核

应用软件

一些GUN程序库和工具

Emacs集成开发环境和文本编辑器

          GCC语言编辑器

GNOME

命令行shell

 图形桌面环境

 KDE

GNOME

unity

                        一些办公套件

openoffice

                        编译

 gcc

 g++

文本编辑器到科学工具的应用软件

  vi

 gedit

  Linux版本

商业公司维护的发行版本Redhat系列

RHEL

CentOS

  FedoraCore

社区组织的维护版本 Debian

  Debian

Ubuntu

Linux目录结构

根目录结构

dev__设备文件

etc__包含了当前操作系统用户所有配置的相

home__当前操作系统所安装的用户的

lib__操作系统使用的库文件以及相关的配置都放在此目录下

mnt__手

media__系统自动挂载

usr__unix软件资源包管理目录,存放的是当前用户下

  bin__Linux操作系统下可执行的系统级的二进制命令

  sbin__超级用户需要用到的一些二进制命令存储在该目录

boot__系统开机时需要加载的一些文件和配置

 lost+found__存放系统错误产生的文件碎片,方便用户

pioc__内核提供的一个接口,主要用来存储系统统计信息

 root__root用户的宿主目录

run__存放系统运行时需要的一些文件

                目录路径介绍

绝对路径__从根目录开始描述的路径,也是从/开始

                        相对路径

 从当前位置开始描述的路

.表示当前目录

..表示当前目录的上级目录

两个临近目录直接进行切换 命令:cd

 robertohuang@rodertohuang:~$

  1.第一个robertohuang:当前登录的用户

 2.@:英文at,在的意思

  3.第二个rodertohuang:主机名

4.~:当前工作目录的位置,宿主目录

 5.$:表示当前登录的用户为普通用户,如果为#则是超级用户

        Linux命令

 文件和目录

 tree

以树状形式显示当前目录

需要安装软件:sudo yum -y install tr

  Is__查看指定目录下所有文件和目录信息

   -a(all)__列出当前目录下所有文件内容

  -R(precursive)__同时列出所有子目录

  -l__除了文件名之外,还将文件的权限,所有者,文件大小等信息详细列出来

 cd__进入指定目录(cd+path)

相对路径-> cd ./robertohuang/tomcat

绝对路径-> cd /home/robertohuang/tomcat

->当前目录的上一级

 .->当前目录

 进入家目录(/home/robertohuang)三种方式__cd__cd ~__cd /home/robertohuang

 pwd__查看当前所在目录(printf working directory的缩写)

创建/删除目

  创建:mkdir +目录名

  mkdir world ->创建world目录

 创建/删除目录of mkdir -p world/a/b ->创建多级录加参数-p

 删除:rmdir +目录名__只能删除空目录,使用频率不高

创建/删除文件__创建touch +

CP

拷贝文件__cp file1.txt file2.txt ->将file1.txt中的内容拷贝到file2.txt er -

文件不存在创建文件

文件存在,覆盖原文件

拷贝目录__cp-r dir1 dir2 ->将目录dir1中的内容拷贝到dir2中__dir2 目录不存在创建目录

                        scp命令

 scp:super copy的缩写

使用该命令的前提条件__目标主机已经成功安装openssh-server

                                使用格式

   scp -r目标用户名@目标主机IP地址:/目标文件的绝对路径/保存到本机的绝对(相对)路径

  scp -r目标用户名@目标主机IP地址:/目标文件的绝对路径/保存到本机的绝对/相对路径

scp -r [email protected] 68.29.128:/home/usertest/test /home/robertohuang/test

 拷贝目录需要加参数-

查看文件内容

 cat__cat file.txt ->将文件内容一次性输出到终端,如果文件太长,无法再终端全部显示

more

 more+文件名

 文件内容分页显示到终端,但是只能一直向下浏览, 不能回退

                                        相关操作

回车:显示下一行

空格:显示下一 页

ctrl+c或q:退出

 less

less+文件

文件内容分页显示到终端,可以自由上下浏览

                                        相关操作

回车:显示下一行

空格:显示下一页

 ctrl+p 或↑:滚动到上一行

ctrl+n或↓:滚动到下一行

   q:退出

head

从文件头部开始查看前x行的内容

 head e head -5 hello.c -->查看hello.c文件前五行的内容

  如果没有指定行数,默认显示前10行

  tail

从文件尾部开始查看后x行的内容

tail -5 hello.c -->查看hello.c文件后五行的内容

如果没有指定行数默认显示后10行内容in

软链接 相当于Windows下快捷方式

 注意事项

创建软链接,源文件要使用绝对路径

软连接大小:源文件 +路径的总字节数

 目录可以创建软链接

 示例:In -s /home/robertohuang/a.txt (源文件名+绝对路径) a.test (软链接的名字)

硬链接

 注意事项

以文件副本的形式存在,但不占用实际空间

不允许给目录创建硬链接

 硬链接只有在同一个文件系统中才能创建

硬链接能够同步更新

 linux下每一个文件都对应一 个Inode,创建硬链接后两个文件的Inode是相同的

  查看文件的Inode:stat a.txt

文件创建硬链接后,硬链接计数+ 1,删除一个硬链接硬链文件或目录属性

  wc

  查看文件的字数、字节数、行数

wca.txt 结果: 7 23 120 a.txt

 参数

   -c:只显示字节数

 -l:只显示行数

-w:只显示字数

 od__查看二进制文件信息

  du__查看某个录的大小(disk use的缩写)

 df__查看磁盘的使用情况(disk free的缩写)

                        which

查看指定命令所在的路径

which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果

 文件权限,

whoami__查看当前登录用户

chmod

修改文件访问权限

                                修改方法

 文字设定法

 chmod [who] [+|-丨=] [mode]文件名

   操作对象[who]

u --用户(user)

 g--同组用户(group)

 o--其他用户(other)

a--所用用户(all)

  操作符[+-=]

  + --添加权限

  - -- 取消权限

   = --赋予给定权限并取消其他权限

  权限[mode]

r--读

   w--写

x--执行

  例chmod u + wx file.txt

数字设定法

数字表示的含义

 0 --没有权限(-)

 1--执行权限(x)

   2--写权限(w)

 4--读权限(n)

操作符

  + --添加权限

  - -- 取消权限

  = --赋予给定权限并取消其他权限(默认为=)

例:chmod 777 file.txt

                        chown

 将指定文件的拥有者改为指定的用户或组(change owner的缩写)

                                用法

chown +文件所属用户+文件或目录名__chown robertohuang text.txt

chown +文件所属用户:文件所属组+文件或目录名__chown robertohuang:robertohuang text.txt

                        chgrp

 改变文件或目录的所属群组

                                用法

 chgrp +用户组+文件或目录名

  chgrp robertohuang text.txt

查找和检索

 find

  按文件名查询:-na

  find /home/robertohuang name a.txt

按文件大小查询: -size d

 find+路径+-size+范围

                                                范围

大于:+表示-- +100

 小于:-表示-- -100k

等于:不需要添加符号-- 100k

  k必须小写

                                      例子

等于100k的文件: find ~/ - size 100k

大于100k的文件: find ~/ -size +100k

大于50k小于100k的文件: find ~/ -size +50k -size -100k按文件类型查询: -type d

find +路径+ -type +类型__类型

1.普通文件类型用f表示而不是一

 2.d->目录

 3.1->符号链接

4.b-> 块设备文件

5.c->字符设备文件

6.s-> socket文件,网络套接字

 7.p->管道

  例子:find /home/robertohuang -

 grep__按文件内容查

  参数-R

 grep-r +“查找的关键字”+ 路径__grep -r"main void" /home/robertohuang

                压缩包管理

   压缩.gzip命令

  压缩过程中不保留源文件

不能对目录进行压

  不能对多个文件进行打包压缩

   解压缩.gun

  .bz2格式

  压缩.bzip2

  通过使用参数-k(keep)来保留源文件

  不能对目录进行压缩

 不能对多个文件进行打包压

  解压缩bunzip命

   打包__zip-r +打包之后的文件名(dir.zip) + (打包的目录)dir

                                解包

  unzip dir.zip

使用参数- d来解压到指定目录unzip dir zip -d /home/robertohuang/test

                        tar

  该命令可以只打包不压缩

  通过添加参数,来完成文件的压缩和解压

                进程管理

 who

 查看当前在线用户的情况

 登录的用户名

 使用的设备终端

 登陆到系统的时间

                                ttu设备

  tty1 - tty6表示文字界面__ctrl + alt + [F1-F6]

tty7图形界面__子主题1__ctrl+alt+F7

                        ps

查看整个系统内部所运行的进程状况

涉及的参数

 a(all)当前系统所有用户的进程

  u:查看进程所有者及其他一些信息

 x:显示没有控制终端的进程 --不能与用户进行交互的进程[输入、输出]

 -e:显示所有进程

  -f:显示UID,PPIP,C与STIME栏位

 显示当前用户下所有进程 ps aux

对显示的进程过滤ps aux| grep xx 

 grep查询是需要占用一个进程的,所有结果> 2才能说

  如果结果有一条,表示没有查询的进程

  查询结果中PID表示进程ID

                        Kill

用来终止指定的进程(terminate a process)的运行

查看信号编号__Kill-l

  杀死进程__kill -9 89899 [PID进程标识号]__向当前进程发送 了9号信号( SIGKILL )

                        env

查看当前进程环境产量

 环境变量

 当前系统下用户配置路径信息

 格式为键值对:key-value :value

                        top

相当于windows系统下的任务管理器

文字版

  不能翻页

                网络管理

  ifconfig

 获取网络接口配置信息,还可以修改这些配置

获取网络接口信息

                        ping

  测试与目标主

命令格式__ping[参数](主机名或IP地址)

                               参数

   -c数目 在发送指定数目的包后停止

 -i秒数 设定间隔几秒送一个网络封包给一台机器预设置是一秒送一次

                        nslookup

 需要先安装nslookup:yum -y install bind-utils

查看服务器域名对应的IP地址

一般访问网站都是使用域名,如:www.baidu.com,使用该命令就可查看百度所有服务器的IP地址        

创建用户__adduser +用户名

useradd ~-s /bin/bash -g usertest -d /home/usertest -m usertest

-s:指定新用户登陆时shell类型

 -g:指定所属组,该组必须已经存在

-d:用户家目录

-m用户家日录不存在时,自动创建该

设置用户组__groupadd usertest

删除用户

deluser +用户名

userdel -r usertest__选项 -r的作用是把用户的主日录一起删除

 切换用户__su

设置密码

sudo passwd +用户名( luffy )

 passwd root

  passwd 

退出登陆用户__exit

其他命令

                        清屏

 ctrl+l

clea

查看帮助命令man +命令,如man

设置或查看

  设置__alias pag='ps aux I grep'

关机重启

  po

 reboo 

studown

    -t<秒数> :送出警告信息和删除信息之间要延迟多少秒

  -k:只是送出信息给所有用户,但不会实际关机

-r:shutdown之后重新启

-h:将系统关机

 -n:不调用init程序进行关机,而由shutdown自己进行

 -f:重新开机时,跳过fsck指令,不检查档案系统

 -F:重新开机时强迫做fsck检查

 -c:将已经正在shutdown的动作取消shutdown -r now立刻重新开机shutdown -h now立刻关机

                                        例子

                                                shutdown -r now立刻重新开机

                                                shutdown -h now立刻关机

                                                shutdown -k now 'Hey! Go away! now...发出警告讯息,但没有真的关机

                                                shutdown -t3 -r now立刻重新开机但在警告和删除processes之间,延迟3秒钟

                                                shutdown -h 10:42 'Hey! Go away!' 10:42分关机

                                                shutdown -r 10 'Hey! Go away!' 10分钟后关机

                                                shutdown -C将刚才下的shutdown指令取消,必须切换至其它tty,才能下此一指令

                                                shutdown now切换至单人操作模式(不加任何选项时)

                        free__查看内存使用情况

        vim操作

                描述

                        是一个文本编辑程序

                        没有菜单,只有命令,且命令繁多

                基本工作模式

                        命令模式

                                移动光标

                                        h:←左移

                                        I:→右移

                                        j:↓下移

                                        k:↑上移

                                        gg:光标移动文件开头

                                        G:光标移动到文件末尾

                                        0:光标移动到行首

                                        $:光标移动到行尾

                                        123G:跳转到第123行

                                删除

                                        x:删除光标后一个字符,相当于Del

                                        X:删除光标前一个字符,相当于Backspace

                                        dw:删除光标开始位置的字包含光标所在字符

                                        d0:删除光标前本行所有内容,不包含光标所在字符

                                        D(d$):删除光标后本行所有内容,包含光标所在字符

                                        dd:删除光标所在行

                                        n dd:删除指定的行数

                                撤销操作

                                        u:一步一步撤销

                                        Ctr-r:反撤销

                                复制粘贴

                                        yy:复制当前行,n yy复制n行

                                        p:在光标所在位置向下新开辟一行,粘贴

                                        P:在光标所在位置向上新开辟一行,粘贴

                                可视模式__v:按字移动

                                查找操作

                                        /hello ->从光标所在位置向后查找hello

                                                n:下一个

                                                N:上一个

                                        ?hello ->从光标所在位置向前查找hello

                                                n:上一个

                                                N:下一个

                                        在要查询的单词上使用#进行查找

                                替换操作__r:替换当前字符

                                文本行移动

                                        > >:文本行右移

                                        < <:文本行左移

                        文本输入模式

                                进入输入模式

                                        i:插入光标前一个字符

                                        l:插入行首

                                        a:插入光标后一个字符

                                        A:插入行未

                                        0:向下新开行,插入行首

                                        O:向上新开一行,插入行首

                                        s:删除光标所在的字符

                                        S:删除当前行

                        末行模式__命令

                                行跳转__:123->跳转到第123行

                                替换

                                        替换一行

                                                :s/abc/123 ->将当前行中的第一个abc替换为123

                                                :s/abc/123/g ->将当前行中的abc全部替换为123

                                        替换全部

                                                :%s/abc/123 ->将所有行中的第一个abc替换为123

                                                :%s/abc/123/g ->将所有行中的abc全部替换为123

                                        替换指定行__:10,30s/abc/123/g ->将10-30行中的abc全部替换为123。 替换指定行

                                执行shell命令__末行模式里输入!,后面跟命令

                分屏操作__末行模式

                                            命令:sp将屏幕分为两部分-->水平

                                            命令:vsp将屏幕分为两部分-->垂直

                                            命令:sp (vsp) +文件名水平或垂直拆分窗口显示两个不同的文件

                vim打造IDE

                        系统级配置文件目录: /etc/vim/vimrc修改配置文件vimrc或者vimrc

                        用户级配置文件目录: ~/.vim/vimrc

猜你喜欢

转载自www.cnblogs.com/lizongsheng/p/11710099.html