首页 > 系统相关 >二、linux基础命令

二、linux基础命令

时间:2024-03-21 16:30:13浏览次数:27  
标签:tmp 文件 etc 基础 命令 linux home txt 目录

2.1 linux的提示符

1. [root@localhost~]#

提示符的格式

1. [当前用户名@当前的主机名 当前所在的位置]身份标识符

root的提示符

1. [root@localhost~]#

tom的提示符

1.[tom@localhost~]$

身份标识有俩种

1. #表示这个用户是管理员
2. $表示这个用户是普通用户

当前所在的位置

当前所在的位置-工作目录

工作目录的表示形式有俩种

1. 形式1:具体的目录
2. 形式2:~

~表示的是当前用户家目录 

案例1:

1. [root@localhost etc]#

1.当前用户名是root

2.当前计算机的主机名是localhost

3.当前的路劲是etc

4.当前的用户身份是管理员

案例2:

1.  [tom@localhost etc]$

1.当前的用户名是tom

2.当前的主机名是localhost

3.当前所在的路径是etc

4.当前的用户是普通用户

linux的俩种界面:

  • 图形界面
  •   类似于windows,可以用鼠标点击操作
  • 字符界面
  •   类似于dos系统,所有的操作都只能依靠命令 

2.2 linux的命令格式

1. 命令 [选项] 参数
  • 命令:linux中所有的命令,是严格区分大小写
  • 选项:选项是用于控制命令的执行过程
  • 参数:参数是指命令的作用对象

造型

1. 短选项:-字母
2. 长选项:--单词
  •  短选项可以进行合并

2.3 linux目录结构

windows是多跟系统

linux是单根系统

windows的目录结构:

  • windows 是一个多根系统
  • 每个磁盘/分区都是一个根
  • 你在存储文件的时候,文件一定是存储在某一个根目录之下
  • 目录结构是倒树状结构

linux的目录结构特点:

  • linux是一个单根系统
  • 你在linux中存储文件,只会有一个存储位置,就是 / 、
  • 目录结构是倒树状结构 

注意: 根的用法/

linnux根目录下的主要文件

1. /bin:存放的的是命令
2. /sbin:存放的的是命令
3. /tmp:存放临时文件【任何用户都可以在这个目录进行读写操作,但是只能操作自己的文件;这个目录
下的文件30天没有被访问或使用,就会被自动删除】
4. /etc:存储各种配置文件
/etc/inittab
/etc/rc.local
/etc/httpd/httpd.conf
/etc/sysconfig/network-scripts/ifcfg-eth0
5. /home:存放普通用户家目录
6. /root:root用户的家目录
7. /usr:自定义安装软件保存位置
       /usr/bin:存放的的是命令
       /usr/sbin:存放的的是命令
8. /var:存储经常发生改变的文件
        /var/log/messages
        /var/log/secure
9. /dev:存储设备文件

2.4 linux基础命令

2.4.1 pwd

  • 全程:Print Working Directory
  • 作用:显示当前所在的路径
  • 格式:
  • 1. pwd

 案例:

1.[root@localhost network-scripts]# pwd
2./etc/sysconfig/network-scripts
1. [root@localhost 桌面]# pwd
2. /root/桌面

最左侧的 / 表示的是系统根目录

/root/桌面 表示 当前所在的位置是 根下的root下的桌面目录中

案例:

1.[root@localhost network-scripts]# pwd
2.etc/sysconfig/network-scripts

我当前所在的位置是 根目录下的etc目录下的sysconfig目录下的/network-scripts目录中

案例:

1. [root@localhost /]# pwd
2./

当前我在根目录下

2.4.2 cd

  • 全称:Change Directory
  • 作用:切换目录的
  • 格式:
  • 1. cd 目标位置
    

案例1:切换到根目录下

1. cd /

 案例2:切换到dev目录下

dev在根目录下

1. cd /dev

注意:路径是连续的,不能加 空格

目录和目录之间,用/进行分割

案例3:切换etc下的sysconfig目录中    etc在根目录下

1. cd /etc/sysconfig
或者
2. cd /etc/sysconfig/

总结:

1.cd /     进入根目录
2.cd ~     进入当前用户家目录
3.cd       进入当前用户家目录
4.cd -     进入上次执行cd前所在
5.cd ..    进入上一层目录

2.4.3 clear

  • 作用:清空屏幕
  • 格式: 
1. clear

快捷键:ctrl+l

 2.4.4 touch

  • 作用:新建空白文本文件
  • 格式:
格式1:touch 文件名 在当前位置下创建文件
格式2:touch 路径/文件名 在指定的位置下创建文件

案例1:在当前位置下创建文件a1.txt

1. touch a1.txt
1.touch a1.txt             # 在当前目录下创建a1.txt
2.touch /a1.txt            # 在根目录下创建a1.txt
3.touch ~/a1.txt           # 在当前用户家目录下创建a1.txt
4.touch /etc/a1.txt        # 在/etc下创建a1.txt
5.touch /etc/sysconfig/a1.txt # 在/etc/sysconfig/下创建a1.txt
6.touch ../a1.txt          # 在当前所在目录的上一级目录中,创建a1.txt
7.touch ../../a1.txt       # 在当前所在目录的上一级的上一级目录中,创建a1.txt
8.touch ../sysconfig/a1.txt

案例2:去根目录下,创建a2.txt

方法1:
cd /
touch a2.txt
方法2:
touch /a2.txt

案例3:去根etc下,创建a3.txt

方法1:
cd /etc
touch a3.txt
方法2:
touch /etc/a3.txt

案例4:去根etc下的sysconfig中,创建a4.txt

方法1:
cd /etc/sysconfig
touch a4.txt
方法2:
touch /etc/sysconfig/a4.txt

2.4.5  执行命令报错信息

执行命令可能成功也可能失败

  • 通常执行成功是没有信息的
  • 通常执行失败都会有返回信息

导致命令执行失败有几种可能

第一种:命令写错了,报错信息格式

 bash: 命令 command not found ...

第二种:文件路径错误,报错信息格式

命令 : 报错提示                     : 产生错误的原因
touch: cannot touch /taaaa/aaa.txt : no such file or directory

第三种:没有权限

命令:报错提示                      : 产生错误的原因
touch: cannot touch /taaaa/aaa.txt : permission denied

2.4.6 mkdir

  • 全称:MaKe DIRectory
  • 作用:新建文件夹/目录
  • 格式:
  • 格式1:在当前位置下直接创建目录:mkdir 目录名
    格式2:在指定位置下直接创建目录:mkdir [选项] 路径/目录名

    案例1:在当前位置下创建目录dir1

 mkdir dir1

案例2:在home下创建目录dir2

mkdir /home/dir2

案例3:在tmp下创建目录dir3

mkdir /tmp/dir3

案例4:在根目录下创建目录dir4

mkdir /dir4

案例5:在tmp下,创建目录a1,在a1里面创建a2,在a2,里面创建a3

mkdir /tmp/a1/a2/a3 -p

注意:在linux中,命令执行成功是不显示信息的,执行失败会有信息

2.4.7相对和绝对路径

绝对路径:

  • 就是完整路径
  • 从根的目录下开始写

相对路径:

  • 不是完整的路径
  • 从当前位置开始写

例如:当前我们的工作目录是 /etc/sysconfig

案例1:切换到根下

相对路径写法:cd ../../
绝对路径写法:cd /

案例2:切换到home下

相对路径写法:cd ../../home
绝对路径写法:cd /home

案例3:切换到etc下

相对路径写法:cd ../
绝对路径写法:cd /etc

案例4:切换到sysconfig下面的network-scripts目录

相对路径写法:cd network-scripts
相对路径写法:cd ./network-scripts
绝对路径写法:cd /etc/sysconfig/network-scripts

 2.4.8 cp

  • 全称:copy
  • 作用:复制文件或者是目录
  • 格式:
 cp [选项] 源文件 目的路径

选项

  • -a:在复制文件的过程中,保持文件的属性不变,另外,也可以实现复制目录【cp默认无法直 接复制目录】
  • -r:递归复制。这个选项就是单纯的用来实现复制目录。

总结案例【一般文件】

将tmp下的a.txt复制到home下
cp -a /tmp/a.txt /home/
将tmp下的a.txt复制到home下,名字改为b.txt
cp -a /tmp/a.txt /home/b.txt
将tmp下的a.txt复制到/etc/sysconfig下
cp -a /tmp/a.txt /etc/sysconfig
将tmp下的a.txt复制到当前位置
cp -a /tmp/a.txt ./
将tmp下的a.txt复制到当前位置,名字改为qq.txt
cp -a /tmp/a.txt ./qq.txt
将tmp下的a.txt复制到根下
cp -a /tmp/a.txt /
将tmp下的a.txt复制到根下,名字改为qq.txt
cp -a /tmp/a.txt /qq.txt
将当前位置下的a.txt复制到home下
cp -a a.txt /home
将当前位置下的a.txt复制到根下
cp -a a.txt /
将当前位置下的a.txt复制到上一级目录下
cp -a a.txt ../
将当前位置下的a.txt 复制到当前位置改名为b.txt
cp -a a.txt b.txt
总结案例[目录文件]
将tmp下的目录a001复制到个根下
cp -a /tmp/a001 /

 扩展:

./ 也可以表示当前位置
[ ] 表示里面的内容是可选【可选的意思就是说,可以选,也可以不选】
< > 表示里面的内容是必选【必选的意思就是说,里面的内容必须得有】

2.4.9 mv 

  • 全称:
  • move 作用:移动文件或者是目录
  • 格式:
mv 源文件 目的路径

总结:

将home下的a.txt移动到tmp下
mv /home/a.txt /tmp
将home下的a.txt移动到tmp下,改名成b.txt
mv /home/a.txt /tmp/b.txt
将home下的a.txt移动到根
mv /home/a.txt /
将home下的a.txt移动到根下,改名成b.txt
mv /home/a.txt /b.txt
将home下的a.txt移动到当前位置下
mv /home/a.txt ./
将home下的a.txt移动到当前位置下,改名成b.txt
mv /home/a.txt ./b.txt
将当前位置下的a.txt 移动到home下
mv ./a.txt /home
mv a.txt /home
将当前位置下的a.txt 移动到home下,改名成b.txt
mv ./a.txt /home/b.txt
mv a.txt /home/b.txt
将当前位置下的a.txt 移动到 当前位置下,改名成b.txt [文件改名]
mv a.txt b.txt
mv ./a.txt ./b.txt

思考问题:下面命令的执行效果

mv /home/a.txt /aaa

这个命令有三种可能

  • 第一种:/aaa不存在的,那么这个命令就是将a.txt移动到根下,并且名字修改为aaa
  • 第二种:/aaa存在,而且是目录,那么这个命令就是将 a.txt 移动到 /aaa下面,文件名不变
  • 第三种:/aaa存在,而且是一般文件,那么这个命令就是将 a.txt 移动到 /下,并且改名成 aaa 将原有文件覆盖

2.4.10 rm

  •  全称:ReMove
  • 作用:删除文件或者是目录的
  • 格式:
rm -rf 要删除的文件或者目录

选项

-r:这个选项是专用于删除目录【在删除文件的时候,也可以加这个选项】

-f:这个选项是强制删除【删除过程不会进行询问】

 总结1:

删除tmp下的a.txt
rm -rf /tmp/a.txt
删除根下的a.txt
rm -rf /a.txt
删除当前位置下的a.txt
rm -rf a.txt
rm -rf ./a.txt

2.4.11 通配符

 通配符就是一些具有特殊的含义的符号

*:表示任意个任意字符
?: 表示任意一个字符
|:前后可以分别写一个命令,通过管道符,可以见前面命令的执行结果传递给后面的命令,让后面的
命令再处理一次

例如:表示以a为开头的文件名 

a*
可以匹配:
aaaaaaa
a11112312341234
a
不能匹配:
caaasdfasfdasdfasf

例如:表示以a为结尾的文件名

*a
可以匹配
asdfasdfasdfa
w4dsgfdsgdfgaaasdasfda
a
aa
不能匹配
aaaax

例如:表示文件名包含a

*a*
可以匹配
222afsf
a

1)删除所有文件

rm -rf *

2)删除所有文件名以a为开头的文件

rm -rf a*

3)删除所有文件名以a为结尾的文件

 rm -rf *a

 2.4.12 ls

  • 作用:查看当前位置或者是指定的位置下,有什么文件
  • 格式:
格式1:ls # 查看当前位置下文件
格式2:ls ./ # 查看当前位置下文件
格式3:ls 路径 # 查看指定的路径下有什么文件

选项

  • -a 显示所有文件,包括隐藏文件【linux中的隐藏文件是文件名前面是一个 . 】
  • -l 显示文件的属性信息
  • -h 以人类易读的方式显示文件的大小

 案例1:查看根目录下的全部的文件

ls /

案例2:查看home下的全部文件

 ls /home

案例3:查看当前位置下的全部文件

ls
ls ./

案例4:创建一个隐藏文件,然后尝试用ls查看这个文件

touch .a.txt
ls -a

案例5:查看home下的全部文件,包括隐藏文件

ls -a /home

案例6:查看当前位置下的文件的属性

 ls -l

案例7:查看home下的文件的属性

 ls -l /home

案例8:查看当前位置下所有文件的属性,包括隐藏文件

ls -l -a
ls -la
ls -al

案例9:查看home下的文件的属性,包括隐藏文件

ls -a -l /home
ls -al /home
ls -la /home

关于文件类型

  • linux中有多种文件类型 目录[d]:文件夹
  • 一般文件[-]:文档,例如doc、txt
  • 设备文件[b 或者 c]:指的是计算机中的外部设备,例如硬盘、u盘、键盘、鼠标
  • 链接文件[l]:快捷方式
  • ...

 2.4.13 cat

  • 作用:查看文本文件的内容【可以将多个文件的内容一块显示出来】
  • 格式:
cat 文件名 [文件名]

案例:将/etc/passwd 文件复制到home下,然后用cat查看文件中的内容

[root@localhost ~]# cp /etc/passwd /home/
[root@localhost ~]# cat /home/passwd

注意:用cat只能查看一般文件的内容,不能查看目录

2.4.14 more

  • 作用:查看文件的内容【比较适合查看大文件】
  • 格式:
more 文件名

more的操作

  • 敲回车:显示下一行
  • f:显示下一屏
  • 敲空格:显示下一屏
  • b:显示上一屏
  • q:退出查看

2.4.15 less

  • 作用:查看文件的内容【比较适合查看大文件】
  • 格式:
less 文件名

less的操作

  • 敲回车:显示下一行
  • f:显示下一屏
  • 敲空格:显示下一屏
  • b:显示上一屏
  • q:退出查看

2.4.16 head

  • 作用:查看文件的内容【默认是看文件的前10行】
  • 格式:
head -N 文件名

案例1:查看文件/etc/passwd的前10行

格式1:
head /etc/passwd
格式2:
head -n10 /etc/passwd

2.4.17 tail

  • 作用:查看文件的内容【默认是看文件的最后10行】
  • 选项
-f: 动态监控文件内容变化,常用于监控日志文件变化
  • 格式
tail -N 文件名

案例1:查看文件/etc/passwd的最后10行

格式1:
tail /etc/passwd
格式2:
tail -n10 /etc/passwd

2.4.18 wc

  • 作用:统计文件中有多少行、单词、字符
  • 格式:
wc [选项] 文件

选项

-w 统计单词

-c 统计字符

-l 统计行

 统计passwd有多少行

cat passwd | wc -l
wc -l passwd

案例:计算etc下有多少个文件

 ls -l /etc | wc -l

2.4.19 vi

作用:创建或者是编辑一个文本文件

格式:

vi 文件名
vi 路径/文件名

1)如果这个文件是存在的,而且是文本文件,那么vi就会直接打开这个文件

2)如果这个文件是存在的,而且是目录文件,那么vi也可以打开这个文件,但是无法正常的保存

3)这个文件不存在 ,vi会自动的创建一个新的空文件

注意:

  • cat、head、tail、more、less 和vi 都可以查看文件中的内容
  • 但是vi,主要是用于对文件内容进行修改
  • 而其他的命令是查看文件的内容

 案例1:复制文件 /etc/init.d/functions 复制到home下,然后用vi打开看看这个文件的内容

cp /etc/init.d/functions /home/
vi /home/functions

vi打开后,退出的方法

先按键盘的 ESC 键
然后 按 shift 和 : 两个键【一块按】
最后在左下角的冒号后面输入 q! ,然后敲回车

vi是一个模式化的工具

模式1:查看模式

功能:1. 查看文件的内容

           2. 在文件中,搜索指定的内容

           3. 复制行或者是删除行

表现:进入到输入模式的时候,在屏幕的最下角没有任何内容

模式2:输入模式 功能:1. 可以在文件中进写入或者修改操作表现

进入到输入模式的时候,在屏幕的最下角出现 INSERT 字样

模式3:末行模式

功能:1. 主要是用于执行各种的命令

           2. 显示行号

           3. 保存、退出

           4. 行跳转

表现:在屏幕的左下角出现 冒号和一个闪烁的光标

 查看模式 ===> 输入模式

1. A a   2. I i    3. O o

 输入模式 ===> 查看模式

1. ESC

 查看模式 ===> 末行模式

1. shift + :

末行模式 ===> 查看模式

1. ESC

输入模式和末行模式之间,无法进行直接切换

 vi应用

查看模式下的操作

  • nG:跳转到第n行
  • dd:删除光标所在的行【剪切】
  • yy:复制光标所在的行
  • p - 小:将剪切/复制的内容,粘贴到当前所在的行的下一行
  • P - 大:将剪切/复制的内容,粘贴到当前所在的行的上一行
  • u:撤销操作 /要搜索的内容:在/后面输入要搜索的内容,就可以直接开始搜索了,
  • n:继续向下搜索 N:继续向上搜索

按 dd 删除一行

按 4dd 删除连续的四行

按 yy 复制一行

按 15yy 复制连续的十五行

 输入模式下的操作:

  • 输入模式下没有操作

末行模式下的操作:

  • set nu:在每一行的前面,显示一个行号
  • set nonu:取消每行前面的行号
  • nohl:取消高亮
  • w:保存
  • q:退出
  • !:强制执行

组合:

wq 保存退出

wq! 强制保存退出

q 退出

q! 强制退出【不对输入的内容进行保存,而强制退出】 - 不保存强制退出

2.4.20 date

计算机有俩个时间

硬件时间:硬件 - 震荡电路 - hwclock

软件时间:是在计算机开机的时候,读取震荡电路的时间 - date

 date的用法

用法1:查看时间

 date

用法2:修改时间

date [MMDDhhmm[cc]YY][.ss]]

用法3:查看时间的一部分内容  date+%F

案例:创建一个txt文件,文件名是当前系统时间

touch  `date +%T` .txt

 2.4.21 echo

作用:输出一个内容

格式:echo

控制输出结果的显示样式

必须加上选项-e

设置控制对象的范围:

开头:\033[xxm,这里xx的值是不同的

  • 31m:设置为红色
  • 32m:设置为绿色
  • 34m:设置为蓝色
  • 5m:设置字体闪烁 

结尾:\033[0m

 相关选项

-e:控制字符,作用是让后面的特殊字符生效

  • \t:水平制表符
  • \v:垂直制表符
  • \n:换行符

-n:设置输出这行的内容后,不换行

2.4.22 bc

linux的计算题

[root@localhost ~]# echo “5+3”  |  bc

8

标签:tmp,文件,etc,基础,命令,linux,home,txt,目录
From: https://blog.csdn.net/Name_886/article/details/136662366

相关文章

  • 前端基础之JavaScript数组
    数组一、什么是数组数组类似于python里面的列表[]在编程中,数组(Array)是一种数据结构,用于存储相同类型的多个元素。这些元素按照顺序排列,并通过索引(通常是非负整数)来访问。数组可以包含各种数据类型,例如整数、浮点数、字符串,甚至其他数组。在许多编程语言中,数组的大小是固定......
  • 前端基础之JavaScript运算符
    一、什么是运算符运算符,顾名思义就是在运算中的符号,例如加法中的”+“就是一个运算符。严谨来说,运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。二、运算符的分类JavaScript中的运算符可以分为多种类型,包括算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算......
  • 前端基础之JavaScript流程控制
    一、if判断在JavaScript中,if语句是一种常见的条件语句,用于根据条件执行不同的代码块。除了基本的if语句外,还有if...else、if...elseif...else等变体,用于处理多个条件的情况。1.if语句if语句用于在条件为真时执行特定的代码块。语法:if(condition){//当条件......
  • 前端基础之JavaScript对象
    一、什么是对象现实生活中:万物皆对象,对象是一个具体的事物,看得见摸得着的实物。例如,一本书、一辆汽车、一个人可以是“对象”,一个数据库、一张网页、一个与远程服务器的连接也可以是“对象”。在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字......
  • 前端基础之JavaScript函数
    一、什么是函数在JavaScript中,函数是一种可重复使用的代码块,用于执行特定任务或计算。函数可以接受参数,执行特定的操作,并返回一个值。二、函数的声明函数可以通过函数声明、函数表达式或箭头函数来定义。函数声明:functionfunctionName(parameters){//函数体......
  • 软件测试---接口测试基础理论
    目录软件开发中常见的模块化单位接口测试的接口是什么为什么需要做接口测试常见的HTTP状态码介绍一下HTTP网络协议常用的接口请求方法进行GET和POST接口测试GET请求示例POST请求示例常见的HTTP请求库或框架cookie、session、tokencookietokensession如何判断测试覆盖率......
  • 若依基本框架内容介绍、多数据源配置、命令、自定义打包脚本
    若依是一个能够帮助我们快速搭建一个管理平台的开发框架官网地址:https://doc.ruoyi.vip/ruoyi/ 一、基本框架内容介绍二、多数据源配置三、命令、自定义打包脚本 一、基本框架内容1.文件结构Common:用的比较多的是utils包中的工具(处理字符串、日期、获取ip、发送请求、......
  • Uboot启动Linux内核
    参考资料来源:https://www.bilibili.com/video/BV12E411h71h?p=22&vd_source=432ba293ecfc949a4174ab91ccc526d6正点原子Linux驱动开发指南 image全局变量:在bootm.c中,存在一个全局变量bootm_headers_timages;/*pointerstoos/initrd/fdtimages*/结构体定......
  • QGIS编译(跨平台编译)056:PDAL编译(Windows、Linux、MacOS环境下编译)
    点击查看专栏目录文章目录1、PDAL介绍2、PDAL下载3、Windows下编译4、linux下编译5、MacOS下编译1、PDAL介绍  PDAL(PointDataAbstractionLibrary)是一个开源的地理空间数据处理库,它专注于点云数据的获取、处理和分析。PDAL提供了丰富的工具和库,用于处理......
  • jQuery基础总结
    1.1.jQuery介绍1.1.1JavaScript库JavaScript库:即library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面,比如动画animate、hide、show,比如获取元素等。简单理解:就是一个JS文件,里面对我们原生js代码进行......