首页 > 系统相关 >Linux基础命令

Linux基础命令

时间:2024-06-30 21:53:49浏览次数:22  
标签:opt 文件 log 基础 命令 Linux bogon root find

三、基础命令全解

【1】、ls命令

查看folder and file

  • 使用方法:

    Usage: ls [OPTION]... [FILE]...
    
  • 常用选项

    • -a:显示目录下所有的内容,包括隐藏内容
    • -l:以长格式显示目录下的内容以及详细信息
    • -h:以人性化显示目录下各个文件的大小(KB、MB、GB)
    • -d:仅显示目录本身而不显示内部的文件
    • -i:查看iNode号(系统任何的文件和目录都有一个唯一的编号)
    • -R:递归地查看目录下所有的内容(从头到尾)

【2】、mkdir命令

  • mkdir [option] 路径 (也可以是目录)

    [root@bogon home]# mkdir aaa
    [root@bogon home]# ll
    总用量 900
    drwxr-xr-x.  2 root      root           6 11月  7 09:30 aaa
    
  • option

    • -p:递归创建多个目录

      [root@bogon home]# mkdir -p /home/aaa/bbb/ccc
      
  • 可以在多个不同目录下同时创建不同的目录,分别在/home目录下,/opt目录下,根目录下同时创建了不同的文件夹

    [root@bogon /]# mkdir /home/a   /opt/he  /den
    

【3】、cd命令

cd [option] [folder name] Change the shell working directory.

folder name可以是绝对路径或者相对路径,如果不指定路径名,则默认进入当前用户的家目录

  • 路径

    • 绝对路径

      以 /(根目录)为起点,到达指定地方

    • 相对路径

      以当前路径为起点,到达指定地方

  • cd commen的快捷操作

    • ~:表示当前用户的家目录
    • .:表示为当前目录
    • ..:表示返回上一级目录,如果当前在根目录下,cd ..没有作用
    • -:可在两个路径之间来回切换

【4】、pwd命令

pwd [-LP] Print the name of the current working directory

执行pwd后显示当前所在的工作目录的绝对路径

【5】、touch命令

创建新的空白文件

touch [option] filename

【6】、cp命令

复制文件或者目录,

cp [option] source destination

  • option

    • -p:保留原文件属性不变(修改时间、归属关系、权限)

      也就是在复制时同时复制source file的属性

    • -r:复制目录(包含目录下所有的子目录和文件),也就是递归复制

  • 可以同时拷贝多个文件

  • 可以在复制是修改文件或者目录的名字,把ag这个文件复制到根目录下并且改名为aa

    [root@bogon bbb]# cp ./ag /aa  
    
  • 如果重复拷贝一同同样的目录到一个同样的destination,会给出info,提示你是否需要覆盖。如果source folder是empty,则不会给出info

【7】、mv命令

移动folder 或者 file到其他位置

mv [option] source destination_path

  • 可以理解为剪切

    移动完成后当前目录没有了,去了新的path下

  • 可以重命名

    [root@bogon home]# mv pig.txt big.txt
    
  • 单个文件或文件夹的移动,将文件从一个目录移动到另外一个目录

    [root@bogon 抖音神曲]# mv a.txt /home/aaa/
        [root@bogon aaa]# ll
        总用量 0
        -rw-r--r--. 1 root root  0 11月  7 17:06 a.txt
        drwxr-xr-x. 3 root root 17 11月  7 09:34 bbb
        [root@bogon aaa]# ll ../抖音神曲/
        总用量 0
        -rw-r--r--. 1 root root 0 11月  7 17:06 b.txt
        -rw-r--r--. 1 root root 0 11月  7 17:06 c.txt
    

【8】、cat命令

查看文本文件的内容

cat [option] filename

  • option

    • -n:查看文件内容时显示行号
  • 查看系统的用户信息有哪些

    [root@bogon opt]# cat /etc/passwd
    
  • 查看软件的配置文件

    [root@bogon opt]# cat /etc/nginx/nginx.conf
    
  • cat可以读取多个文件,依次显示1和2的内容

    cat filename1 filename2
    
  • 注意事项

    cat命令是一次性把文件内容读出来,即使文件中有书十万条数据,也是全部显示,这个是很不合理的,因此cat不适合查看大文件,但是也不是完全不可以查看大文件,需要和其他命令搭配使用

【9】、less命令

对文件的输出进行分页显示的工具,常用于查看内容量较大的文件

less [option] file

  • option
    • -N:以行号形式显示文件内容
  • 使用技巧
    • 使用键盘的上下方向键逐行查看
    • pgdn:向下翻一页(Fn+下键)
    • pgup:向上翻一页(Fn+上键)
  • /字符串
    • G:直接跳到文件的最后一行
    • gg:直接跳转到文件的首行
    • :1000:精准定位到某一行
    • q:推出

【10】、head命令

head:显示文件的开头部分内容,默认显示开头前10行

  • option
    • -n:显示开头n行

【11】、tail命令

显示文件的末尾,默认显示文件末尾10行

  • option
    • -n:指定显示的行数
    • -f:动态显示,tail命令可以实时检测文件
      • 可以用于监测日志,实时检测写入日志的内容
      • 不可以实时监测通过vim写入的数据内容,需要使用vim输入完成后保存退出才可以看到
    • -F:能够对文件进行刷新,即便文件不存在也可以检测直到文件出现

【12】、cut命令

  • -d:分隔符,按照指定分隔符分割列。与 -f 一起使用

    [root@localhost opt]# cut -d : -f 1 /etc/passwd > /tmp/passwd
    [root@localhost opt]# cut -d : -f 1 /etc/sh > /tmp/passwd
    shadow   shadow-  shells   
    [root@localhost opt]# cut -d : -f 1 /etc/shadow > /tmp/shadow
    [root@localhost opt]# diff /tmp/passwd /tmp/shadow 
    [root@localhost opt]# 
    
  • -f:依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思(列号,提取第几列)

  • -c:以字符 (characters) 的单位取出固定字符区间

  • -b:以字节为单位进行分割

【13】、rm命令

  • 用于删除文件或目录

    [root@bogon bbb]# rm wanjai1.log 
    rm: remove regular empty file ‘wanjai1.log’? y
    
    [root@bogon bbb]# rm wanjai2.log wanjai3.log 
    rm: remove regular empty file ‘wanjai2.log’? yes
    rm: remove regular empty file ‘wanjai3.log’? yes
    
  • optioon

    • -f:强制删除,强制删除文件不去提示

      [root@bogon bbb]# rm -f wanjai{4..10}.log
      [root@bogon bbb]# ll
      
    • -r:删除目录

      使用-rf参数,
      [root@bogon bbb]# rm -rf ./亚索
      [root@bogon bbb]# ll
      
    • rm -rf /*

      删除Linux中的所有文件,也就是删库跑路,不要用,不要用,不要用,不要用,不要用

    • -i:删除前需要确认

【14】、wc命令

  • word cont 统计字符

  • 在UTF-8编码表下 中文占3个字节,英文占1个字节

  • wc -l filename 统计文件有多少行

    [root@xuruizhao opt]# wc -l /etc/passwd
    43 /etc/passwd
    
  • wc -w filename 统计文件中的字母数(根据字符个数来判断是不是字母)

  • wc -c 内容 统计有多少个字节

    • 在每一行后面会有一个$符,统计时会将$也算进去,所以会比输入的多1

      [root@xuruizhao opt]# wc -m ./test 
      3 ./test
      [root@xuruizhao opt]# cat ./test 
      你好
      

【15】、find命令

实时查找,一般首先使用locate命令去进行查找,在使用find命令去查找,因为find命令是实时查找,耗费资源。

1、-name参数

find  位置  -name  filename  ###  在address位置下查找filename文件
[root@bogon opt]# find / -name gushi.txt   ### 在根目录下查找文件
/opt/gushi.txt
模糊搜索:使用通配符进行搜索
常见的压缩包文件后缀:.tat .tgz  .zip  .tar.gz
使用find查找所有压缩的文件
find / -type f  -name "*.tar" -o -name "*.tgz" -o -name "*.zip" -o -name "*.tar.gz"

通过find命令进行通配符的查找时,尽量加上引号(单引号、双引号均可)

2、-type

-type f   找文本文件
-type F   找目录
-type l   找链接
find  位置  -type f -name  filename
根据这个命令就可以区分出文件和文件夹了

3、-exec参数

和xargs命令一样,都是将前面命令得到的内容传递给-exec在进行处理,-exec是find命令提供的参数,在执行删除命令时,比xargs更安全
在使用-exec时需要在命令的末尾加上';'

使用{}表示find命令查找到的数据

⚠️find命令在查找时,是查找到一个就把查找到的内容传递给{},进行二次加工,而不是在find查找完成后一次性将所有查找到的数据给{},在进行二次加工

[root@bogon opt]# touch {1..10}.txt
[root@bogon opt]# find . -name '*.txt' -exec rm -rf {} \;

4、-OK参数

和-exec参数一样,只不过是-OK多了一个确认的过程

5、根据时间查找

find . -name 'filename' -mtime(或者atime、ctime) +3(几天前)/-3(几天内)/3(前几天)
touch -d 修改后的时间 -m/-a/-c filename 去修改文件对应的时间

# 查找三个月前的数据
find /etc  -mtime +90
# 查找最近十天之内的数据
find /etc  -mtime -10

6、-o参数

-o是或者的意思

-o可以实现查找多个文件名

也可以实现多个参数,进行或者查找,满足其中一个条件即可

# 查找address目录下filename或者filename2或者filename3的文件
find address -name 'filename' -o 'filename2' -o 'filename3'
# 查找/boot目录下大小等于10M或者是文本文件的文件
find /boot -size 10M -o -type f

7、-l参数

-l参数:过滤出来的内容只显示文件名
[root@bogon opt]# grep -Rlni 'password' /var/log
/var/log/audit/audit.log.2
/var/log/audit/audit.log.1
/var/log/audit/audit.log
/var/log/messages-20231105
/var/log/anaconda/anaconda.log
/var/log/anaconda/syslog
/var/log/anaconda/journal.log
/var/log/messages-20231127
/var/log/boot.log-20231124
/var/log/messages-20231113
/var/log/boot.log-20231119
/var/log/boot.log-2023113

8、-maxdepth

find / -maxdepth number -type f 'filename'
从根目录开始搜索深度为number的目录层级
-maxdepth参数:以用户给定的位置为起点,给搜索设定最深搜索层级

9、-perm参数

使用-perm参数可以按照文件的权限去进行搜索
find /  -perm 777 
[root@bogon ~]# find /opt -perm  777 
/opt/cmatrix-1.2a

10、-size

找出大小超过20MB的压缩包
find / -type f  -size +20M -name "*.tar"
                      -20M  ##小于20MB
                      20M   ##等于20MB

11、-user

按照数据的所有者进行查询

find /boot -user root

【16】、locate命令

locate是进行索引查找,他的查找是存在延迟的,比方说我们刚刚创建的一个文件使用locate命令是不能立刻查找出来的,
locate的索引在/var/lib/mlocate/mlocat.db数据库中,Linux的数据库默认是在0点去更新,只有在更新数据库后才可以使用locate命令去查找出来
我们也可以使用undatedb去强制更新数据库更新后也可以查出

image-20240320154511867

标签:opt,文件,log,基础,命令,Linux,bogon,root,find
From: https://www.cnblogs.com/xuruizhao/p/18277013

相关文章

  • 【深度学习】图形模型基础(3):从零开始认识机器学习模型
    1.引言机器学习,这一古老而又充满活力的领域,其历史可追溯至上世纪中叶。然而,直到20世纪90年代初,机器学习才开始展现出其广泛的应用潜力。在过去的十年里,机器学习更是迎来了前所未有的蓬勃发展,其应用范畴广泛,不仅在网络搜索、自动驾驶汽车、医学成像和语音识别等领域大放异彩......
  • 【深度学习】图形模型基础(1):使用潜在变量模型进行数据分析的box循环
    1.绪论探索数据背后的隐藏规律,这不仅是数据分析的艺术,更是概率模型展现其威力的舞台。在这一过程中,潜在变量模型尤为关键,它成为了数据驱动问题解决的核心引擎。潜在变量模型的基本理念在于,那些看似复杂、杂乱无章的数据表象之下,往往隐藏着一种更为简洁、有序的结构和规律,只......
  • Perl语言入门学习:从基础到实践
    Perl,全称为“PracticalExtractionandReportingLanguage”,是一种高效、灵活的编程语言,尤其擅长于文本处理、系统管理和报告生成。其丰富的库支持和正则表达式能力,让Perl成为数据挖掘、日志分析和自动化脚本编写的理想选择。本文旨在引导初学者迈出Perl编程的第一步,通过实际......
  • 【Linux】Linux下的环境变量(什么是环境变量,环境变量有什么作用?)
    目录一、前言二、什么是环境变量? 三、如何添加环境变量?四、如何获取环境变量?......
  • Linux操作系统学习:day08
    内容来自:Linux介绍视频推荐:Linux基础入门教程-linux命令-vim-gcc/g++-动态库/静态库-makefile-gdb调试目录day0853、命令和编辑模式之间的切换54、命令模式到末行模式的切换与末行模式下的保存退出命令模式到末行模式的切换保存退出55、末行模式下的替换操作56、末......
  • Linux-如何查看服务器中的硬件配置信息
    在Linux服务器上查看硬件配置信息,可以使用一系列命令行工具。以下是一些常用命令来获取不同硬件组件的详细信息:查看CPU信息:查看内存信息:cat/proc/cpuinfo:显示处理器类型、型号、频率、核心数等详细信息。lscpu:提供更为人性化的CPU架构和核心数量等信息。查看硬盘信息: ......
  • 常见的 Linux 命令
    在Linux系统中,有许多常用的命令可用于执行各种任务。以下是一些基本和常用的Linux命令及其用途:文件和目录操作显示当前目录pwd#显示当前工作目录的路径列出目录内容ls#列出当前目录的文件和子目录ls-l#以详细格式列出文件和目录ls-a#显示所有文件......
  • LINUX系统编程:多线程互斥
    目录1.铺垫2.线程锁接口的认识静态锁分配动态锁的分配互斥量的销毁互斥量加锁和解锁3.加锁版抢票4.互斥的底层实现1.铺垫先提一个小场景,有1000张票,现在有4个进程,这四个进程疯狂的去抢这1000张票,看看会发生什么呢?#include<iostream>#include<thread>#include......
  • 2,linux服务器使用学习
    目录服务器使用-SSH介绍使用OpenSSH-LinuxFinalShell-Windows阿里云服务器使用示例领取免费账号进行登录服务器使用-SSH介绍SecureShell(SSH)是由IETF(TheInternetEngineeringTaskForce)制定的建立在应用层基础上的安全网络协议。它是专为远程登录会话(甚至......
  • IPython的%macro魔法命令:自动化和重用代码的利器
    IPython是一个强大的交互式Python解释器,它提供了许多增强功能来提升开发效率,其中之一就是魔法命令(magiccommands)。魔法命令以%开头,用于执行特定的操作,如控制IPython的行为或执行特殊的代码转换。%macro是IPython中一个非常有用的魔法命令,它允许用户定义和存储一段代码,以便......