linux熟悉环境与基本操作 第一章

Linux命令

linux的哲学思想

优点,优势

1.一切都是一一个文件。(包括硬件,文本, 二进制,源代码)
2.系统中拥有小型,单- -用途的程序。(- 个程序只负责做好自己的本职工作)
3.当遇到复杂任务,通过不同功能用途的程序组合起来完成。轻量级, -台服务dhcp ip数据库服务网页
4.避免令人困惑的用户界面就是没有复杂的图形界面。() 我想怎么使用程序,win程序
5.连配置文件都存储在文本中,方便增删改查。
6.不在乎后缀名,有没有都无所谓,不是通过后缀名来定义文件的类型。

 

基础知识:

root                                 #表示用户

localhost                        #主机名

~                                      #家目录

#                                      #管理员用户

$                                      #普通用户

root                                 #root的家目录

opt                                   #opt目录

[root@localhost ~]#

[houlixie@localhost ~]$

[houlixie@localhost ~]$   hostname

localhost.localdomain
[houlixie@localhost ~]$

 基础命令:

#关机命令

halt                                            #立刻关机

poweroff                                    #立刻关机

shutdown -h now                      #立刻关机(root用户使用)

shutdown -h 10                         #10分钟后自动关机

#重启

reboot

init6

shutdown -r now

#修改语言

修改LANG变量实现中文语言提示
[root@localhost ~]# LANG=zh _CN.UTF-8
[root@localhost ~]# echo SLANG
zh_ CN.UTF-8
[root@localhost ~]# LANG=en_ US.UTF-8
[root@localhost ~]# echo SLANG
en_ US.UTF-8


#修改颜色
[root@localhost ~]# vim /root/. bashrc
PS1='\[\e[1; 34m\] [\u@\h \W]\$\[\e [Om\]'


[root@localhost ~]#source /root/. bashrc


#修改时间

date -s “2022-09-15    12:00”

 

Linux命令精讲

相信大家都了解Widows, windows是面向用户的系统, 图形化界面操作,点点对话框便可以完成操作,那inux是 已系统精简出名的,所以不是面向用户
的操作系统,有一定的操作难度,那我们今天就要学会如何去使用一一些基本命令 去对inux系统进行操作达到我们的要求。

shell

  • Linux系统中运行的一种特殊程序
  • 在用户和内核之间充当“翻译官”
  • 用户登录Linux系统时,自动加载一个Shell程序
  • Bash是Linux系统中默认使用的Shell程序

命令执行的顺序
1 绝对路径下的执行程序
2 先看别名,如果有别名  直接执行
3 再区别是  内部  还是外部,  内部直接执行
4 外部  首先 看 hash 表  表中直接执行, 表中有  但是找不到  直接报错
5 没有hash  回去   $PATH 路径下的文件夹去找,找到执行   找不到直接报错

绝对路径: 以根开头
相对路径: 不是以根开头

初学的几个命令   比较实用的:

ls  (list)

查找

-a    显示所有文件
-l     长格式 

-R    递归显示 
-d     只显示当前目录
-t      已时间排序
-i      显示indoe号
-S    文件大小排序

举例:显示/etc目录下以m,n,r,p开头的文件或目录列表

ls  /etc/[mnrp]*

显示/etc/目录下所有以rc开头,并最面是0-6之间的数字,其它为任意字符的文件或目录

ls  /etc/rc*[0-6]

ls   -l    长格式显示 ,文件属性比较详细   ls   -l  等于 ll

ls   -a   显示所有文件  包括  隐藏文件  包括    .     ..      (在linux 当中已.开头的 为 隐藏文件  )

ls   -A    显示所有文件  包括  隐藏文件不包括    .     ..

ls   -d    只显示当前目录的属性

ls   -h    人性化显示(加了文件大小的单位)

ls   -R    递归显示

ls   --color    显示颜色

ls   -S          以文件容量大小排序

ls   -i           显示indoe号   

注:Ls  一般不单独使用

  1. 功能有限 要加上选项
  2. ls单独使用 显示当前文件夹下的所有文件(假如有1000w  直接ls显示会导致直接死机)

ls 会配合 通配符 去过滤需要的文件

通配符        (匹配文件名)                           

       任意单个字符

 *    任意长度的任意字符

 {1..10}    1到10  10个数    {1..100}    {a..z}

 [123]      [123]只代表一个数值     1 2  3   [a-z]  注意范围   不包括 大Z

 [0-9]         代表单个数字

 [^a-c]       反向匹配

  \              显示原来的意思

举例:以p  开头的文件    p*

           以.conf 结尾   *.conf

Alias     别名    

1.将常用的一些  比较复杂的命令  简单化

      alias    自行定义的命令='常用的复杂命令'

2.单独使用 alias   会显示 所有的  别名命令

3.别名 大?  还是 内部大?  外部大?

  1. 先判断 他是别名,内部命令 还是  外部命令,如果是别名 直接执行
  2. 如果是 内部命令  直接在bash中执行
  3. 如果是外部命令  先看 hash  表    表中有   先找表     表中的路径找不到直接报错
  4. 表中没有  去找    
  5. /usr/local/sbin      :         /usr/local/bin     :      /usr/sbin     :           /usr/bin      :        /root/bin  (不用记)
  6. 找到 执行 找不到 报错
  7. 别名>内部>hash>外部

删除别名:      unalias   别名命令

 

ip  -a       #显示网卡

ps  aux   #进程详细信息

tab

这个命令很实用,可以补全命令,按一下   只有一个选项   按两下  将所有命令显示

Ctrl   +l           #清屏

Ctrl   +c          #终止命令

Ctrl   +a          #从光标处跳动命令的最开头

Ctrl   +e          #从光标处开始跳到 命令的 最末尾

Ctrl   +u          #从光标处 清空到 开头

Ctrl   +k          #从光标处 清空到末尾

pwd
显示当前路径

cd
cd -   回到上一次目录
cd     去往 当前用户的家目录
cd ~   去往 当前用户的家目录

举例:到etc目录

cd  /etc

 

du  (disk  use)
统计文件占用磁盘大小
-a   每个文件单独显示
-s   只显示总大小

-h   人性化显示

注意  不能跟-as一起使用

举例:写出统计/var目录中的第一层子目录的空间占用情况的命令

cd   /var          #进入var目录

du -d  1  /var      #-d   代表目录层数        1  代表目录层数的第一层

mkdir
-p  递归建立文件夹
-v  显示建目录的过程

举例:mkdir -pv  /data/{11,22,33}/{aa,bb,cc}

touch 
1.当文件不存在时 直接新建该文件,并且该文件是空文件
2.当文件存在,会刷新该文件的时间戳

格式:touch  文件名

举例:touch   1.txt

ln 软硬连接:
软连接
ln -s   源文件绝对路径      放连接文件的地方

举例:将/etc/local文件做软连接到/usr/sbin/,并改名为 local1 

ln -s  /etc/local  /usr/sbin/local1
硬连接
ln       源文件绝对路径      放连接文件的地方

 

cp   复制

cp    要复制的文件        要放置复制文件的位置/可以重命名

-f      有相同文件时强制覆盖不提醒

-i      有相同文件时覆盖提醒

-p     保留文件的源权限

-r      复制文件夹一定需要

-a     保留权限 更强大  包括连接文件的属性也可以保留

建议使用-a 

Mv     移动 &改名

Which

只能找命令的位置

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

hello.sh    绿色可以执行的程序

你额外安装的命令

1.有执行权限(绿色)

2.要在 $PATH  这个变量的路径下

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/:/mnt

使用命令: 

1.在哪个文件夹   

2.在文件夹下 是否有你操作的文件?

3.关注你的报错信息

所有使用命令修改的配置 都是临时生效

只有修改配置文件(写入文件)才是永久生效

Find    查找文件   

 Locate  (扩充了解) 

1.模糊查询

2.不是实时查询

linux系统中有一个文件数据库,是去找这个数据库

找那些一直不改变的文件

 应用范围比较窄

优点:巨快

Updatedb  刷新数据库  

Find 

优点:

1.默认递归查询

2.它是真的去硬盘上一个一个文件给你找(实时)

3.查找条件巨多

4.精确查找

缺点:

1.慢

基本格式:

find    [查找范围]    [查找条件表达式]

[查找范围]: 如果 不写 范围 代表 默认当前目录

[查找条件表达式]:

举例:

1.按查找文件名字查找     -name

[root@localhost data]#find /boot/  -name  'vm*'     

                                    命令     查找范围      查找条件表达式(查找名字是以vm开头的文件)

/boot/vmlinuz-3.10.0-693.el7.x86_64

/boot/vmlinuz-0-rescue-869dbd607e5e4f758fa152ef2229f2b6

2.按文件大小查找文件      -size      k    M   G

[root@localhost data]#find /boot/  -size  +1024k

#查找boot目录下  大于1024k 的文件

[root@localhost data]#find /boot/  -size  -1M

#查找boot目录下  小于1M的文件

注意点:文件大小不加加减号是一定的范围,单位越精确越好

[root@localhost data]#find   /boot/  -size  1024k   

                                     命令   范围       查找表达式   

[root@localhost data]#find   /boot/  -size  1M            

                                      命令   范围       查找表达式

范围公式:

前面的数字 减去1

1024 -1     1023k   到   1024k

  1-1          1字节    到    1M

3.按文件属主查找   属主:文件的拥有者    -user

[root@localhost data]#find  /home/     -user zhangsan

#找到home 目录下 属于zhangsan用户的文件

4.按文件类型查找    -type        f (普通文件)   d(目录)   c(字符文件)   b(块设备)

[root@localhost data]#find /dev/ -type  b

#找到  /dev 下  的 块设备文件

5.按照 indoe号查找       -inum   要先知道indoe             

[root@localhost data]#ls -i

9243885 1.txt  9243846 bigfile  9243860 zwz.txt

[root@localhost data]#find  -inum 9243885

./1.txt

6.按照目录层级查找文件      -maxdepth level       -mindepth level

[root@localhost data]#find   /etc/    -maxdepth   2    -mindepth    2

#只看第二层

7.天数查找文件             -mtime      

[root@localhost data]#find /boot/  -mtime  +7   -type f -size +1M   -delete  

#找到 7天以上  且文件类型为普通文件  且大于1M的文件   并且 加上处理动作 删除

8处理动作:

默认是:print

  1. print  输出屏幕让你看一下
  2.  ls      显示详细信息
  3.  delete  直接删除
  4.  ok     连接符 会询问
  5.  exec  连接符  不会询问

 find -name "*.txt"  -ok mv {} /mnt \;

 找到名字以txt结尾的文件

-ok  处理动作 连接 前面后面的命令    会询问你要不要这样处理

 mv    {}  代指前面 find找到的文件    /mnt  移动到的目录     \;固定格式

不删除,移动文件

find -name '*.txt' -ok  mv {}  /mnt  \;

会询问

find -name '*.txt' -exec mv {} /mnt \;

不会询问

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值