linux基础命令和帮助

/tmp   放临时数据的目录

/proc  虚假目录,映射内存数据。将内存映射成文件,linux一切皆文件

/etc    存放注册信息

/boot  只存放引导数据

以上等目录与分区没有直接关系

/dev 存储设备

     sda   sdb  sdc ...

分区类型

GPT:只支持主分区

MBR:

主分区         一块硬盘最多4个,安装操作系统使用,只有一个是激活状态主分区  1-4

扩展分区      一块硬盘最多一个,不可以直接存数据,划分更小的分区  1-4

注:主分区和扩展分区加起来最多不超过4个

逻辑分区    在扩展分区内的更小分区单位   逻辑分区自动分,不能像上面分区一样人为规定,编号规则:5->...

将设备名称与创建的文件关联  叫做挂载(mount)  

目标文件夹叫做挂载点  类似于 C、D盘

例如老师举的例子 ,将windows盘中 E盘这个盘符删除,里面数据并没有丢失,只是不能访问而已

/  必须有一个分区分配给/ 目录  ,没有指定的挂载的 就放在/下面

将内存中不用的一些程序放在硬盘中,进而避免内存奔溃的情况

windows实现方式 ,使用虚拟内存实现

右键 此电脑->属性->界面右边”更改设置“->"高级“->“性能”->"设置"->"高级”->"更改",

大约有3G,成为pagefile。

linux中也有类似的思维  swap分区  内存和硬盘交换,模拟内存

/dev/sda  200G

/dev/sda1    mount       /boot     1G  

/dev/sda2    mount      /             100G

/dev/sda3    mount      /data      50G

/dev/sda4                     extend   50G

/dev/sda5                    逻辑分区 swap  40G

ctrl+alt+enter

ctrl+alt+f2   命令行形式

ctrl_alt_f6  安装向导

查看系统内存  cat  /proc/meminfo

linux中向上翻页  shift+pageup

查看分区情况  cat  /proc/partitions

kdump 系统奔溃以后内核分析,先不关注

=====================================================

查看当前用户的id   id  -u

查看某个用户的id  id   -u   ttyang

tty   显示终端的设备名

pts  伪终端

echo $SHELL    显示当前使用的shell

/bin/bash  目前主流的shell

cat  /etc/shells  目前支持的shell类型

hostname 查看主机名

prompt  命令提示符

~  该用户的家目录

$ 普通用户

#管理员账号

修改提示符格式

暂时性的(内存中)

  PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"

      1    颜色加重

      5    闪烁

     41    背景颜色   41-47

     33   字体颜色    31-37

永久性(磁盘中)

PS1="\[\e[1;33m\][\u@\h \W]\\$\[\e[0m\]"

  cd /etc/profile.d/

以.sh 结尾的就行  gedit   /etc/profile.d/denv.sh   要在虚拟机本机操作

nano  文本编辑工具

  nano    /etc/profile.d/denv.sh

我们所执行的命令,实际上是bash,在执行命令的同时就会在后台加载,被bash集成的命令称为内部命令。

相对的称为外部命令,外部命令在磁盘,相对内部命令较慢。

内部命令和外部命令的本质区别是  是否集成在shell里!

type cd /cat  查看命令的类型

type  -a echo

help 当前内部命令的所有帮助

enable cmd 启用内部命令   

enable –n cmd 禁用内部命令  

enable –n 查看所有禁用的内部命令

which cat(command) 专门查看外部命令的路径

whereis cat  查看外部命令,且可以显示帮助文档,如下:

[root@centos7 ~]#whereis cat

cat: /usr/bin/cat /usr/share/man/man1/cat.1.gz /usr/share/man/man1p/cat.1p.gz

linux中做二进制计算

[root@centos7 ~]#which bc

/usr/bin/bc

十进制转换为二进制

1. obase=2

2.敲入 十进制任意一个数,即可得到一个二进制

3.退出 quit

二进制转换为十进制

1.ibase=2

2.敲入二进制一个数,即可得到一个十进制

3.推出quit

Hash 缓存表

在linux中,一些文件存放位置有特定约束

1.在执行一个命令时,系统首先会判断是否是内部命令,如果不是就会搜索PATH里面各个文件夹

2.在PATH中找到就会缓存在内存里,我们称为hash,下次执行时候就会从上次执行的路径下找到

PATH环境路径

hash 显示hash缓存

hash -d    hostname(commond)清理缓存

hash -r 全部清理

hash –l 显示hash缓存,可作为输入使用

hash -p  /usr/bin/hostname  sh

相当于给命令的全路径起个别名

[root@centos7 ~]#hash -p  /usr/bin/hostname sh

[root@centos7 ~]#sh

centos7.localdomain

alias  列出所有别名

alias cdnet='cd /etc/sysconfig/network-scripts/'

删除别名  unalias   cdnet

取消所有别名  unalias -a

1.当一个字符串既是内部命令还是外部命令,又是别名。那么别名优先级别>内部命令>(hash表>$PATH)外部命令

2.当别名和内部命令或者外部命令冲突时候,可以禁用别名 。前面加入反斜杠,例如: \echo,或者'echo'  

例如 alias echo=hostname

[root@centos7 network-scripts]#echo

centos7.localdomain

环境变量

  仅对当前用户:~/.bashrc  

  对所有用户有效:/etc/bashrc

使得环境生效: source .bashrc   或者 .  .bashrc

linux中 .开头的文件为隐藏文件

多个命令放在一行,可以用分号隔开

linux中两种时钟

    系统时间:内核通过CPU的工作频率进行的   date

    硬件时钟:主板   clock

   clock  -s 操作系统时间不正确,修改成和硬件时间一致

   clock -w 硬件时间修改成和操作系统时间一致

ntpdate ip   使得远程机器和当前主机系统(date)时间一致

whatis   解释命令简短含义

lshw 列出硬件信息

刚刚装好的系统,没有whatis命令,得过一会才有,实际它是一个whatis数据库,在centos7中mandb 可以生成whatis数据库

=====================================================

hexdump 查看二进制文件

man bash 列出所有内部命令的帮助

date +%y    20

date +%y%m%d   200703

date +%Y%m%d   20200703

date +%F   2020-07-03

date "+%F %T"   2020-07-03 23:50:00 完整时间

date -d tomorrow  

date -d yesterday

date -d "-2 day"  前两天

date -d "2 day" 后两天

+%F   显示时间按照年-月-日

man手册

man passwd   默认查看的是章节比较小的那一节

man   5 passwd  查看第五节的手册

whatis查看某个命令在第几章

使用whatis可以查看passwd手册的第几章

[root@centos7 ~]#whatis passwd

passwd (5)           - password file

passwd (1)           - update user's authentication tokens

sslpasswd (1ssl)     - compute password hashes

man  -a  keyword   列出所有关键字的帮助

man  -k  keyword  列出所有匹配的关键字页面

man -f  keywword  相当于whatis  

man  -w  keyword   打印man帮助文件的路径

ctrl+alt +F2/F3/F4可以临时将图形化转化为命令行形式

/etc/issue  用户提示登录信息

uname -m  cpu 架构

操作系统语言  locale

修改为中文  localectl set-locale LANG=zh_CN.UTF-8

修改为英文  localectl set-locale LANG=en_US.utf8

安装中文  rpm -ivh man-pages-zh-CN-1.5.2-4.el7.noarch.rpm

GUN工具info适用于适合通用文档参考

info  页面的结构就像一个网站

/usr/share/doc   多数安装了的软件包的子目录,包括了这些软件的相关原理说明

在windows和linux中换行本质不一样,内部二进制不一样;

linux中换行、回车是一个动作

windows中是换行和回车是动作分开

验证方法:

1.将linux和windows可以相互传输,通过hexdump -C  文件名   查看查看文件的二进制

windows  00000000  41 42 43 0d 0a 61 62 63     0d 代表换行

linux         00000000  41 42 43 0a 61 62 63 0a

2. xxd  文件名   也可以查看二进制文件

/etc/localtime  时区的文件

cal  显示日历 ,敲cal,默认显示当月

cal -y  显示整年日历

cal    9   2020   显示2020年9月的日历

cal   9  1752  

shutdown -h +3    3分钟关机

shutdown -c  取消关机

而在windows中 ;

   shutdown /s /t 3600 表示60分钟关机

   shutdown /a  取消关机,且可以远程关机

who当前登录主机的用户

ps aux  查看当前运行的所有程序

screen   

screen  -ls   查看执行的状态

screen -r  恢复之前的界面

screen -S xiaohong    开始一个界面,类似于套接字

screen -x xiohong  加入到小红窗口,实现同步,相当于QQ的远程协助

crtl+a d 临时剥离会话

exit  会话全部退出

注:1.必须是3台机器;2.必须在同一用户

=========================================================

echo 返回显示

echo -e "\a" 命令结束提示

换行将以多行显示

[root@centos7 ~]#echo -e 'abc\n123'

abc

123

可以按照特定格式输出

[root@centos7 ~]#echo {000..20..2}

000 002 004 006 008 010 012 014 016 018 020

echo 'echo $PATH' 不识别命令和变量

echo `echo $PATH` 识别命令和单引号

echo "echo $PATH" 不识别命令,识别变量

学过的东西忘记了,再次记录下!!!!

[root@centos7 ~]#help echo

echo: echo [-neE] [arg ...]

    Write arguments to the standard output.

    Display the ARGs on the standard output followed by a newline.

    Options:

      -n        do not append a newline

      -e        enable interpretation of the following backslash escapes       启用以下反斜杠转义的解释

      -E        explicitly suppress interpretation of backslash escapes

    `echo' interprets the following backslash-escaped characters:

      \a        alert (bell)

      \b        backspace

      \c        suppress further output    压缩输出

      \e        escape character 

      \f        form feed

      \n        new line

      \r        carriage return

      \t        horizontal tab

      \v        vertical tab

      \\        backslash

      \0nnn     the character whose ASCII code is NNN (octal).  NNN can be

        0 to 3 octal digits

      \xHH      the eight-bit character whose value is HH (hexadecimal).  HH

        can be one or two hex digits

    Exit Status:

    Returns success unless a write error occurs.

$() 与 ` `等价

history  查看执行命令 ,在屏幕上会显示出来行号对应执行的那一条命令  !行号,非常方便

且每个用户的家目录下都有一个历史文件 .bash_history

几个小技巧:

1.重复前一个命令, 按 !! 并回车执行

2. !cat 表示以cat 开头的命令,将从后往前数

3.!?pro表示包含pro命令的,将从后往前检索

4. ^ls^ll  表示将上一条命令的ls 替换为ll,此用法只能替换第一个串ls,如果都替代使用下面那个方法

5 .!:gs/string1/string2 将上一条命令中所有的string1都替换为 string2

ctrl+r 搜索命令 ctrl+g 取消搜索

2个常用小技巧:

!$  前一个命令的最后一个字符串

ESC  . (点击Esc键后松开,然后点击 . 键)

history -c  清除内存中的命令

history -d offset: 删除历史中指定的第offset个命令

history -w  /data/file.txt  将历史另存在一个文件里,相当于另存为

history  -p: 展开历史参数成多行,但不存在历史列表中

history 记录地条数地变量,

    echo $HISTSIZE

   1000    

/etc/profile中$HISISIZE可以修改

HISTTIMEFORMAT=“%F %T “   显示时间

vim /etc/profile.d/env.sh可以添加上面地历史格式,永久生效

隐藏部分命令:

HISTIGNORE=“str1:str2*:… “ 忽略str1命令,str2开头的历史

隐藏部分秘密文件:

ignorespace 忽略所有以空白开头的命令

连着重复命令:

ignoredups  默认,忽略重复的命令,连续且相同为“重复”

ignoreboth  相当于ignoredups, ignorespace的组合

bash命令,非常实用的快捷键:

ctrl +  l   清屏,相当于clear命令 

ctrl + o  执行当前命令,并重新显示本命令 

ctrl + s   阻止屏幕输出,锁定 

ctrl + q 允许屏幕输出 ,解锁

ctrl + c   终止命令 

ctrl + z   挂起命令

ctrl + u  从光标处删除至命令行首 

ctrl + k   从光标处删除至命令行尾

alt +  r    删除当前整行

ctrl + a   光标移到命令行首,相当于Home 

ctrl + e   光标移到命令行尾,相当于End

alt+N     提示输入指定字符后,重复显示该字符N次,可以将某个字符快速重复指定次数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值