快捷搜索:
来自 67677新澳门手机版 2019-11-01 10:16 的文章
当前位置: 67677新澳门手机版 > 67677新澳门手机版 > 正文

基础知识

基础知识

1、LINUX 的文件系统

centos6中默认为ext4文件系统,centos7中为xfs文件系统

桥接和仅主机模式的区别

2、常用系统查看命令

查看cpu:cat /proc/cpuinfo、lscpu
查看分区:cat /proc/partitions、fdisk -l、lsblk、df -h
查看内存:cat /proc/meminfo、free -h
查看版本号:cat /etc/centos-release、cat /etc/redhat-release、lsb_release -a

桥接模式

在桥接模式下,相当于VM虚拟出了一个交换机,然后交换机也连接在物理的连接上,这时,虚拟主机都可以获取到和物理主机在同一个网段上的地址。所以可以通过桥接模式,来连接同一个局域网内的虚拟主机。比如你可以连接你的小伙伴的虚拟的主机,如果他也是桥接在当前的局域网中。

3、终端

  • 虚拟终端:tty,Ctrl Alt F[1-6],可以切换终端。
  • 伪终端:图像界面打开的终端或者远程连接的终端,输入tty显示为/dev/pts/#
  • 物理终端:在VMware上输入init 1 ,也就是单用户登录,此时按Ctrl Alt F[1-6],没有反应,说明是单用户登录模式,此时输入tty,显示的是/dev/console。
    tty- 查看终端
    runlevel=who -r- 查看运行模式
    init 0- 关机
    init 1- 单用户
    init 3- 完全多用户
    init 5- 图形界面
    init 6- 重启

仅主机模式

在仅主机的模式下,也相当于虚拟出了一个虚拟交换机,各个虚拟机都连接在虚拟的交换机上,同时你的物理主机也会连接在这台交换机上,地址是由你的VMWare的DHCP服务来分配的,所以自己的虚拟主机之间是可以互通的,但是即使你和你的小伙伴的地址是同一个网段内的都是不可以互通的。

4、命令提示符

  • 查看命令提示符格式:echo $PS1
  • 修改命令提示符格式
    PS1="[e[31m][u@h W] $[e[0m]"
    u 当前用户
    h 短主机名(默认)
    H 完整主机名
    w 当前工作目录(完整路径)
    W 当前工作目录基名(短路径,默认)
    t 24小时时间格式
    T 12小时时间格式
    $ 提示符(普通用户显示为字符$,root用户显示为字符#)
    # 开机后的命令历史数
  • 如何修改命令提示符颜色
    ①vim打开/etc/profile.d/env.sh输入如下图命令:

    67677新澳门手机版 1

    image.png

保存退出后,输入:`. env.sh`或者`source env.sh`让文件生效即可。  
②如果只想对本地有效,可以vim打开`.bashrc`,输入如下图命令:  

![](https://upload-images.jianshu.io/upload_images/8938649-5e91adca9cc14a12.png)

image.png


保存退出后,输入:`. .bashrc`或者`source .bashrc`让文件生效即可。  
**显示用户登录的提示信息,可以修改/etc/motd文件。**

设备的文件名

如linux的哲学思想所说一切皆文件,在linux中设备也可以看做成是文件,
设备文件放在/dev目录下面,磁盘通过不同的接口接在设备上,其设备名也是不一样的。

  • IDE硬盘:/dev/hd[a-z]
  • SCSI硬盘:/dev/sd[a-z]
  • SATA硬盘:/dev/sd[a-z]
  • SAS硬盘:/dev/sd[a-z]
  • U盘:/dev/sd[a-z]
  • CDROM:/dev/sr0
    磁盘只有在分区之后才能使用,分区之后的命名为,这里就拿sda来说,比如第一个分区就叫做sda1,第二个分区就叫做sda2,以此类推!

5、如何将windows中的中文转化为Linux格式

在windows中用记事本写一段中文,上传至Linux中是无法识别的,要想识别,可以有两种方式:

  • 保存时将记事本的编码改为UTF-8,如下图所示
![](https://upload-images.jianshu.io/upload_images/8938649-22c5823d682bf289.png)

image.png
  • 不修改编码,上传之后输入命令:iconv -f gb2312 win.txt -o linux.txt

从windows上传至linux可以在xshell中使用rz命令上传。
安装方法:yum install -y lrzsz

终端terminal

  • 设备终端:比如我们使用的键盘,鼠标和显示器
  • 物理终端(/dev/console):控制台console口
  • 虚拟终端(/dev/tty,tty[2-6]):tty可以有N个,使用Ctrl Alt F[2-6]可以切换虚拟终端
  • 图形化终端(/dev/tty1):在Centos6中是Ctrl Alt F1,但是在Centos7中,在哪一个终端启动即位于哪一个终端上
  • 串行终端(/dev/ttyS#):串行终端由ttyS 数字,可以有很多个
  • 伪终端(/dev/pts/#):当使用xshell,CRT或者putty等客户端SSH连接到linux主机上的时候,就会有/dev/pts/0,后面的数字根据连接数递增
  • 命令提示符:[root@centos6 ~]# 是命令提示符,root代表当前用户,@后面的是档期那的主机名,相当于hostname,空格后面的用户是当前所在的目录,#代表是管理员账户,普通用户是$。

67677新澳门手机版 ,6、内部命令和外部命令

在shell中可执行的命令有两类

  • 内部命令:由shell自带的,而且通过某命令形式提供
    help 内部命令列表
    enable cmd 启用内部命令
    enable –n cmd 禁用内部命令
    enable –n 查看所有禁用的内部命令
  • 外部命令:在文件系统路径下有对应的可执行程序文件
    查看路径:which|which -a |which--skip-alias |whereis
  • 区别指定的命令是内部或外部命令
    type COMMAND
    命令的执行顺序:别名-内部命令-hash-外部命令

cat

查看文件的内容,比如我们可以查看一下当前系统所安装的shell有哪些:

[root@centos6 ~]# cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh

还可以查看一下当前的shell:

[root@centos6 ~]# echo $SHELL
/bin/bash

7、hash缓存表

当一个Shell会话中第一次使用某个外部命令时,Shell会首先按照$PATH中的路径依次搜索,并将搜索到的路径缓存至hash表中。当此次会话再使用本命令时,直接使用内存中的hash表缓存,加快程序运行速度。

  • hash 显示hash缓存
  • hash –l 显示hash缓存的路径和名字
  • hash –d name 清除name缓存
  • hash –r 清除全部缓存

type

用来查看命令的类型,内置命令和外置命令会有不同的显示结果
内置命令:

[root@centos6 ~]# type cd
cd is a shell builtin

外置命令:会显示出外置命令的路径

[root@centos6 ~]# type cat
cat is hashed (/bin/cat)

8、命令别名

  • 显示当前shell进程所有可用的命令别名:alias
  • 定义别名NAME:alias NAME='VALUE'
  • 如果想永久有效,要定义在配置文件中
    仅对当前用户:~/.bashrc
    对所有用户有效:/etc/bashrc
    编辑后的配置文件不会立即生效,需要bash重新读取配置文件
    . ~/.bashrc 或者source ~/.bashrc 均可
  • 撤消别名:unalias
  • 如果别名同原命令同名,如果要执行原命令,可使用

which

查看外部命令的路径

[root@centos6 ~]# which cat
/bin/cat

9、注意

多个选项以及多参数和命令之间使用空白字符分隔
取消和结束命令执行:Ctrl c,Ctrl d
多个命令可以用;符号分开
一个命令可以用分成多行

enable

查看已经启用的内部命令

  • -n command:禁用指定的内部命令
  • -n:查看已经禁用的内部命令
  • -a:启用指定的内部命令
[root@centos6 ~]# enable -n cd
[root@centos6 ~]# enable -n
enable -n cd
[root@centos6 ~]# enable cd
[root@centos6 ~]# enable -a |wc -l
61

hash

外部命令在第一次执行的时候,会在系统下的路径去找,当执行过以后就会缓存下来,可以通过hash查看缓存的命令

  • -d command:删除指定的hash
  • -r:清除所有的hash
[root@centos6 ~]# hash
hits    command
   2    /usr/bin/tty
   1    /bin/cat
   9    /bin/date
   1    /usr/bin/man
[root@centos6 ~]# type cat
cat is hashed (/bin/cat)

alias

查看别名或定义别名

[root@centos6 ~]# alias
alias copy='cp'
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

定义新的别名

[root@centos6 ~]# alias copy=cp

取消别名

[root@centos6 ~]# unalias copy

取消所有别名

[root@centos6 ~]# unalias -a

当前定义的别名只在本次会话中有效,重启终端以后不会生效,如果想对当前用户生效,可以将别名写入~/.bashrc,如果想对本机所有用户生效,可以将别名写入/etc/.bashrc

[root@centos7 ~]# cat .bashrc
# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

命令执行的优先顺序

alias>内部命令>外部命令(hash>PATH)

执行一条命令的时候,会现在alias中查找,如果找不到就在内部命令中去查找,如果还找不到的话就在外部命令中去查找,如果依然找不到的话就会在hash缓存中去查找,最后找不到的话就会去PATH下去找。

那怎么使用命令不受别名的影响呢?

  • /bin/ls:路径执行
  • ls:反斜线
  • 'ls':单引号
  • "ls":双引号

命令的格式

command options arguments:options是选项,arguments是参数

date

查看日期,此为软时间

[root@centos6 ~]# date
Thu May 17 19:19:07 CST 2018

输出指定格式的日期

[root@centos6 ~]# date " %F %T %u"
2018-05-17 19:23:53 4

设置软时间

[root@centos6 ~]# date -s "2018-5-12 12:12:12"
Sat May 12 12:12:12 CST 2018

本文由67677新澳门手机版发布于67677新澳门手机版,转载请注明出处:基础知识

关键词: