linux基础命令

本文介绍了Linux系统中的基础命令,如查看当前路径pwd、改变目录cd、清屏clear、创建文件touch、新建目录mkdir、路径类型、文件复制和移动cp/mv、删除文件rm、通配符使用、文件查看ls、cat、more、less、head、tail、wc统计以及文本编辑器vi的基本操作和模式转换。
摘要由CSDN通过智能技术生成

1.1pwd

全称:Print Working Directory

作用:显示当前所在的路径

格式:

pwd

案例

[root@localhost 桌面]# pwd
root/桌面

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

root@localhost /]# pwd
/

当前根目录下

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

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

1.2 cd

全称:Change Directory

作用:切换目录

格式:

cd 目标位置

案例

1)切换到根目录下

cd /

2)切换到home下

cd /home

3)切换到etc

cd /etc

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

4)切换etc下的sysconfig目录中

cd /etc/sysconfig
或者
cd /etc/sysconfig/

总结

cd / 进入根目录
cd ~ 进入当前用户家目录
cd 进入当前用户家目录
cd - 进入上次执行cd前所在的目录
cd .. 进入上一层目录


1.3 clear

作用:清空屏幕

格式:

clear

1.4 touch

作用:新建空白文本文件

格式:

格式1:touch 文件名 在当前位置下创建文件
格式2:touch 路径/文件名 在指定的位置下创建文件

1) 在当前位置下创建文件a1.txt

 touch a1.txt
touch a1.txt        # 在当前目录下创建a1.txt
touch /a1.txt       # 在根目录下创建a1.txt
touch ~/a1.txt      # 在当前用户家目录下创建a1.txt
touch /etc/a1.txt   # 在/etc下创建a1.txt
touch /etc/sysconfig/a1.txt   # 在/etc/sysconfig/下创建a1.txt
touch ../a1.txt     # 在当前所在目录的上一级目录中,创建a1.txt
touch ../../a1.txt       # 在当前所在目录的上一级的上一级目录中,创建a1.txt
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

1.5 执行命令报错信息

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

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

bash: 命令 command not found ...

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

touch: cannot touch /taaaa/aaa.txt : no such file or directory

第三种:没有权限

touch: cannot touch /taaaa/aaa.txt : permission denied

1.6 mkdir

全称:MaKe DIRectory

作用:新建文件夹/目录

格式:

格式1:在当前位置下直接创建目录:mkdir 目录名
格式2:在指定位置下直接创建目录:mkdir [选项] 路径/目录名

-p:在父目录不存在的情况,会自动的创建父目录

案例

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 -p /tmp/a1/a2/a3

1.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

1.8 cp

全称:copy

作用:复制文件或者是目录

格式:

cp [选项] 源文件 目的路径

-a:在复制文件的过程中,保持文件的属性不变,另外,也可以实现复制目录【cp默认无法直 接复制目录】

-r:递归复制。这个选项就是单纯的用来实现复制目录。

总结案例[一般文件]

将当前位置下的a.txt复制到根下
cp -a a.txt /1)将tmp下的a.txt复制到home下
cp -a /tmp/a.txt /home/

2)将tmp下的a.txt复制到home下,名字改为b.txt
cp -a /tmp/a.txt /home/b.txt

3)将tmp下的a.txt复制到/etc/sysconfig下
cp -a /tmp/a.txt /etc/sysconfig

4)将tmp下的a.txt复制到当前位置
cp -a /tmp/a.txt ./

5)将tmp下的a.txt复制到当前位置,名字改为qq.txt
cp -a /tmp/a.txt ./qq.txt

6)将tmp下的a.txt复制到根下
cp -a /tmp/a.txt /

7)将tmp下的a.txt复制到根下,名字改为qq.txt
cp -a /tmp/a.txt /qq.txt

8)将当前位置下的a.txt复制到home下
cp -a a.txt /home

9)将当前位置下的a.txt复制到上一级目录下
cp -a a.txt ../

10)将当前位置下的a.txt 复制到当前位置改名为b.txt
cp -a a.txt b.txt



1.9 mv

全称:move

作用:移动文件或者是目录

格式:

mv 源文件 目的路径

总结

1)将home下的a.txt移动到tmp下
mv /home/a.txt /tmp

2)将home下的a.txt移动到tmp下,改名成b.txt
mv /home/a.txt /tmp/b.txt

3)将home下的a.txt移动到根
mv /home/a.txt /

4)将home下的a.txt移动到根下,改名成b.txt
mv /home/a.txt /b.txt

5)将home下的a.txt移动到当前位置下
mv /home/a.txt ./

6)将home下的a.txt移动到当前位置下,改名成b.txt
mv /home/a.txt ./b.txt

7)将当前位置下的a.txt 移动到home下
mv ./a.txt /home
mv a.txt /home

8)将当前位置下的a.txt 移动到home下,改名成b.txt
mv ./a.txt /home/b.txt
mv a.txt /home/b.txt

9)将当前位置下的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 将原有文件覆盖

1.10 rm
全称:ReMove
作用:删除文件或者是目录的
格式:
rm -rf 要删除的文件或者目录
-r:这个选项是专用于删除目录【在删除文件的时候,也可以加这个选项】
-f:这个选项是强制删除【删除过程不会进行询问】
总结
1)删除tmp下的a.txt
rm -rf /tmp/a.txt

2)删除根下的a.txt
rm -rf /a.txt

3)删除当前位置下的a.txt
rm -rf a.txt
rm -rf ./a.txt
1.11 通配符

通配符就是一些具有特殊的含义的符号
*:表示任意个任意字符
?: 表示任意一个字符
|:前后可以分别写一个命令,通过管道符,可以见前面命令的执行结果传递给后面的命令,让后面的
命令再处理一次
表示以a为开头的文件名
a*
表示以a为结尾的文件名
*a
表示文件名包含a
*a*
表示文件名是由三个字符的构成
???
表示第三个字符是c的文件
??c*
表示倒数第三三个字符是c的文件
*c??
总结
删除/tmp/ddd下的所有后缀是txt的文件
rm -rf /tmp/ddd/*.txt

删除/tmp/ddd下的所有的文件
rm -rf /tmp/ddd/*

删除/tmp 下的 ddd
rm -rf /tmp/ddd
1.12 ls
作用:查看当前位置或者是指定的位置下,有什么文件
格式:
格式1:ls # 查看当前位置下文件
格式2:ls ./ # 查看当前位置下文件
格式3:ls 路径 # 查看指定的路径下有什么文件
-a 显示所有文件,包括隐藏文件【linux中的隐藏文件是文件名前面是一个 . 】
-l 显示文件的属性信息
-h 以人类易读的方式显示文件的大小
查看根目录下的全部的文件
ls /
查看home下的全部文件
ls /home
查看当前位置下的全部文件
ls
ls ./
创建一个隐藏文件,然后尝试用ls查看这个文件
touch .a.txt
ls -a
查看home下的全部文件,包括隐藏文件
ls -a /home
查看当前位置下的文件的属性
ls -l
查看home下的文件的属性
ls -l /home
查看当前位置下所有文件的属性,包括隐藏文件
ls -l -a
ls -la
ls -al
查看home下的文件的属性,包括隐藏文件
ls -a -l /home
ls -al /home
ls -la /home
linux中有多种文件类型
目录[ d ]:文件夹
一般文件[ - ]:文档,例如doc、txt
设备文件[ b 或者 c ]:指的是计算机中的外部设备,例如硬盘、u盘、键盘、鼠标
链接文件[ l ]:快捷方式
1.13 cat
作用:查看文本文件的内容【可以将多个文件的内容一块显示出来】
格式:
cat 文件名 [文件名]
将/etc/passwd 文件复制到home下,然后用cat查看文件中的内容
[root@localhost ~]# cp /etc/passwd /home/
[root@localhost ~]# cat /home/passwd
注意:用cat只能查看一般文件的内容,不能查看目录
1.14 more
作用:查看文件的内容【比较适合查看大文件】
格式:
more 文件名

more的操作

敲回车:显示下一行
f:显示下一屏
敲空格:显示下一屏
b:显示上一屏
q:退出查看
1.15 less
作用:查看文件的内容【比较适合查看小文件】
格式:
less 文件名

less的操作

敲回车:显示下一行
f:显示下一屏
敲空格:显示下一屏
b:显示上一屏
q:退出查看
1.16 head
作用:查看文件的内容【默认是看文件的前10行】
格式:
head -N 文件名

案例

查看文件/etc/passwd的前10行

格式1:
head /etc/passwd
格式2:
head -n10 /etc/passwd
查看文件/etc/passwd的前15行
head -n15 /etc/passwd

查看文件/etc/passwd的前3行

head -n3 /etc/passwd

查看文件/etc/passwd的第一行

head -n1 /etc/passwd

2.4.17 tail

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

案例

查看文件/etc/passwd的最后10行

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

查看文件/etc/passwd的最后15行

tail -n15 /etc/passwd

查看文件/etc/passwd的最后3行

tail -n3 /etc/passwd

查看文件/etc/passwd的最后一行

tail -n1 /etc/passwd

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

选项:

-w 统计单词
-c 统计字符
-l 统计行
案例
wc passwd
26 36 1159 passwd

26 行数

36 单词数

1159 字符数
统计passwd有多少行
cat passwd | wc -l
wc -l passwd

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

ls -l /etc | wc -l

1.19 vi

作用:创建或者是编辑一个文本文件
格式:
vi 文件名
vi 路径/文件名

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

2)如果这个文件是存在的,而且是目录文件,那么vi也可以打开这个文件,但是无法正常的保存
3)这个文件不存在 ,vi会自动的创建一个新的空文件
注意:
cat、head、tail、more、less 和vi 都可以查看文件中的内容
但是vi,主要是用于对文件内容进行修改
而其他的命令是查看文件的内容
案例
复制文件 /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. 行跳转
表现
在屏幕的左下角出现 冒号和一个闪烁的光标
模式转换问题
输入模式和末行模式之间,无法进行直接切换
vi应用
查看模式下的操作
nG:跳转到第n行
dd:删除光标所在的行【剪切】
yy:复制光标所在的行
p - 小:将剪切/复制的内容,粘贴到当前所在的行的下一行
P - 大:将剪切/复制的内容,粘贴到当前所在的行的上一行
u:撤销操作
/要搜索的内容:在/后面输入要搜索的内容,就可以直接开始搜索了,
n:继续向下搜索
N:继续向上搜索
按 dd 删除一行
按 4dd 删除连续的四行
按 yy 复制一行
按 15yy 复制连续的十五行
输入模式下的操作
输入模式没有操作
末行模式下的操作
数字:直接跳转到指定的行的行首
1 就是跳转到第一行
500 就是跳转到第500
$ 就是跳转到最后一行
set nu:在每一行的前面,显示一个行号
set nonu:取消每行前面的行号
nohl:取消高亮 w:保存
q:退出
!:强制执行
组合
wq 保存退出
wq! 强制保存退出
q 退出
q! 强制退出【不对输入的内容进行保存,而强制退出】 - 不保存强制退出
vi处理文件的错误情况
第一种:用vi打开文件后,发现文件是空白的
第二种:编辑的文件无法保存
第三种:产生一个 崩溃缓存文件
产生警告的原因
1. 用vi打开文件后,写入了内容,但是这个文件被意外关闭了【例如 直接关闭终端】
2. 文件被意外关闭,会产生一个 崩溃缓存文件 ,这个文件是一个隐藏文件,而且这个文件的后缀是
.sw
3. 就是由于这个崩溃缓存文件的存在,才导致每次打开文件的是有一个警告信息
解决方法
删除所有的崩溃缓存文件,就不再产生警告了
补充内容
vi中执行命令,其实就是在末行模式下,通过 !来执行

  • 28
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值