Linux

Linux基础命令

cmd或者powershell直接输入命令wsl就可以进入

Linux的目录结构

image-20221027214128453

  • /,根目录是最顶级的目录了

  • Linux只有一个顶级目录:/

  • 路径描述的层次关系同样适用/来表示

  • /home/itheima/a.txt,表示根目录下的home文件夹内有itheima文件夹,内有a.txt

windows访问Linux目录

wsl

window+R弹出运行窗口,直接输入wsl进入终端

在这里插入图片描述

ubuntu Linux子系统的目录是在这个目录下

C:\Users\用户名\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs

隐藏文件、文件夹

在Linux中以.开头的,均是隐藏的。

默认不显示出来,需要-a选项才可查看到。

ls命令——列出目录下的内容

功能:列出目录下的内容

语法:ls [-l -h -a] [参数]

  • 参数:被查看的文件夹,不提供参数,表示查看当前工作目录

  • -l,以列表形式查看

  • -h,配合-l,以更加人性化的方式显示文件大小【以易于阅读的形式,列出文件大小,如K、M、G】

    -h选项必须要搭配 -l 一起使用

    ls -lh

  • -a,显示隐藏文件(以.开头的,表示是Linux系统的隐藏文件/文件夹,只有通过-a选项,才能看到这些隐藏的文件/文件夹)

ls / 列出根目录的内容

zy@zhouyuan:~$ ls /
bin   etc   lib    libx32  opt   run   srv  usr
boot  home  lib32  media   proc  sbin  sys  var
dev   init  lib64  mnt     root  snap  tmp

•ls -l -a

•ls -la

•ls -al

上述三种写法,都是一样的,表示同时应用-l和-a的功能

  • ls -la / 以列表的形式展示根目录下的所有文件(包括隐藏文件)

pwd命令——展示当前工作目录

pwd命令来自:Print Work Directory

功能:展示当前工作目录

语法:pwd

cd命令——切换工作目录

cd命令来自英文:Change Directory

功能:切换工作目录

语法:cd [目标目录]

参数:目标目录,要切换去的地方,不提供默认切换到当前登录用户HOME目录

HOME目录

每一个用户在Linux系统中都有自己的专属工作目录,称之为HOME目录。

  • 普通用户的HOME目录,默认在:/home/用户名

  • root用户的HOME目录,在:/root

FinalShell登陆终端后,默认的工作目录就是用户的HOME目录

相对路径、绝对路径
  • 相对路径,/开头的称之为相对路径

    相对路径表示以当前目录作为起点,去描述路径,如test/a.txt,表示当前工作目录内的test文件夹内的a.txt文件

  • 绝对路径,/开头的称之为绝对路径

    绝对路径从开始描述路径

特殊路径符
  • .,表示当前,比如./a.txt,表示当前文件夹内的a.txt文件
  • ..,表示上级目录,比如../表示上级目录,../../表示上级的上级目录
  • ~,表示用户的HOME目录,比如cd ~,即可切回用户HOME目录

mkdir命令——创建文件夹

mkdir来自英文:Make Directory

功能:创建文件夹

语法:mkdir [-p] 参数

  • 参数:被创建文件夹的路径

    参数必填,表示Linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可

  • 选项:-p,可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

zy@zhouyuan:~$ cd /
zy@zhouyuan:/$ pwd
/
zy@zhouyuan:/$ cd ~
zy@zhouyuan:~$ pwd
/home/zy
zy@zhouyuan:~$ mkdir test 
//--- 在home/zy目录内创建ok,但是如果在其他目录内创建是有权限问题的
zy@zhouyuan:~$ cd test
zy@zhouyuan:~/test$ pwd
/home/zy/test
zy@zhouyuan:~/test$ cd ..
zy@zhouyuan:~$ pwd
/home/zy
zy@zhouyuan:~$ cd /
zy@zhouyuan:/$ mkdir 123
// 拒绝访问了
mkdir: cannot create directory ‘123’: Permission denied
// 以root权限访问,需要输入密码,然后就有权限创建文件夹了
zy@zhouyuan:/$ su root
Password:
root@zhouyuan:/# mkdir 123
root@zhouyuan:/# pwd
/
root@zhouyuan:/# ls
123  boot  etc   init  lib32  libx32  mnt  proc  run   snap  sys  usr bin  dev   home  lib   lib64  media   opt  root  sbin  srv   tmp  var
root@zhouyuan:/# su zy
zy@zhouyuan:/$

touch命令——创建文件

功能:创建文件

语法:touch 参数

  • 参数:参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用
zy@zhouyuan:~/123$ touch 123.txt

cat命令——查看文件内容

功能:查看文件内容

语法:cat 参数

  • 参数:被查看的文件路径
zy@zhouyuan:~/test$ cd ~
zy@zhouyuan:~$ pwd
/home/zy
zy@zhouyuan:~$ mkdir 123
zy@zhouyuan:~$ cd 123
zy@zhouyuan:~/123$ touch 123.txt
zy@zhouyuan:~/123$ cat 123.txt
啦啦啦  哈哈哈zy@zhouyuan:~/123$

more命令——查看文件,支持翻页查看

功能:查看文件,可以支持翻页查看

语法:more 参数

  • 参数:被查看的文件路径
  • 在查看过程中:
    • 空格键翻页
    • q退出查看

cp命令——复制文件、文件夹

cp命令来自英文单词:copy

功能:复制文件、文件夹

语法:cp [-r] 参数1 参数2

  • 选项:-r,可选,复制文件夹使用
  • 参数1,Linux路径,表示被复制的文件或文件夹
  • 参数2,Linux路径,表示要复制去的地方

示例:

  • cp a.txt b.txt,复制当前目录下a.txt为b.txt
  • cp a.txt test/,复制当前目录a.txt到test文件夹内
  • cp -r test test2,复制文件夹test到当前文件夹内为test2存在

mv命令——移动文件、文件夹

功能:移动文件、文件夹

语法:mv 参数1 参数2

  • 参数1:Linux路径,表示被移动的文件或文件夹
  • 参数2:Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在
// 当前目录在/home/zy
zy@zhouyuan:~$ pwd
/home/zy
// 创建目录123
zy@zhouyuan:~$ mkdir 123
zy@zhouyuan:~$ ls
123
// 把文件夹123改名为456
zy@zhouyuan:~$ mv 123 456
// 查看目录下的内容
zy@zhouyuan:~$ ls
456

rm命令——删除文件、文件夹

rm命令来自英文单词:remove

功能:删除文件、文件夹

语法:rm [-r -f] 参数...参数

  • 参数:支持多个,每一个表示被删除的,空格进行分隔
  • 选项:-r,删除文件夹使用
  • 选项:-f,表示force,强制删除(不会弹出提示确认信息)一般root用户会用到

强制删除,-f选项

可以通过 su - root,并输入密码123456(和普通用户默认一样)临时切换到root用户体验

通过输入exit命令,退回普通用户。(临时用root,用完记得退出,不要一直用,关于root我们后面会讲解)

rm删除文件、文件夹 - 通配符

rm命令支持通配符 *,用来做模糊匹配

符号* 表示通配符,即匹配任意内容(包含空),示例:

  • test*,表示匹配任何以test开头的内容
  • *test,表示匹配任何以test结尾的内容
  • test,表示匹配任何包含test的内容

rm命令很危险,一定要注意,特别是切换到root用户的时候。

如下命令,请千万千万不要在root管理员用户下执行:

rm -rf /

rm -rf /*

效果等同于在Windows上执行C盘格式化。

which命令——查看命令的程序本体文件路径

我们在前面学习的Linux命令,其实它们的本体就是一个个的二进制可执行程序。

和Windows系统中的.exe文件,是一个意思。

我们可以通过which命令,查看所使用的一系列命令的程序文件存放在哪里

功能:查看命令的程序本体文件路径

语法:which 参数

  • 参数:被查看的命令

find命令——搜索文件

功能:搜索文件

语法1——按文件名搜索

find 路径 -name 参数

  • 路径,搜索的起始路径

  • 参数,搜索的关键字,支持通配符*

    比如:

    test*,表示匹配任何以test开头的内容
    *test,表示匹配任何以test结尾的内容
    *test*,表示匹配任何包含test的内容
    

为了确保后续演示,拥有最大的权限,可以在整个系统完成搜索

我们可以切换到root用户以获得管理员权限

执行命令:su - root

输入密码:123456(和你普通用户的密码一样)

基于通配符的含义,可以结合find命令做文件的模糊查询。

查找所有以test开头的文件:find / -name “test*”
查找所有以test结尾的文件:find / -name “*test”
查找所有包含test的文件:find / -name “*test*”
find命令——按文件大小查找文件

语法:find 起始路径 -size +|-n[kMG]

  • +、- 表示大于和小于
  • n表示大小数字
  • kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB
查找小于10KB的文件: find / -size -10k

查找大于100MB的文件:find / -size +100M

查找大于1GB的文件:find / -size +1G

ctrl+c 中断查找

grep命令——通过关键字过滤文件行

功能:从文件中通过关键字过滤文件行。

语法:grep [-n] 关键字 文件路径

  • 选项-n,可选,表示在结果中显示匹配的行的行号。
  • 参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用””将关键字包围起来
  • 参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口
// 创建test文件
touch test.txt
// 在该文件中输入4行文本:
// 你好啊
// 我很好
// 今天天气真好
// hello,world!

// 查看文件内容
zy@zhouyuan:~$ cat test.txt                     你好啊                                             我很好                                            今天天气真好                                     hello,world!

// 过滤你好关键字 返回的你好标红
zy@zhouyuan:~$ grep "你好" test.txt               你好啊
// 过滤你好关键字,并显示行号
zy@zhouyuan:~$ grep "你好" test.txt -n           1:你好啊                                

wc命令——统计文件的行数、单词数量等

功能:统计文件的行数、单词数量等

语法:wc [-c -m -l -w] 文件路径

  • 选项,-c,统计bytes字节数量
  • 选项,-m,统计字符数量
  • 选项,-l,统计行数
  • 选项,-w,统计单词数量
  • 参数,文件路径,被统计的文件,可作为内容输入端口
zy@zhouyuan:~$ cat test.txt
你好啊
我很好
今天天气真好
hello,world!

zy@zhouyuan:~$ wc test.txt
 3  4 58 test.txt
//行数 单词数 字节数

// 统计字节数
zy@zhouyuan:~$ wc test.txt -c
58 test.txt

// 统计字符数
zy@zhouyuan:~$ wc test.txt -m
30 test.txt

// 统计行数
zy@zhouyuan:~$ wc test.txt -l
3 test.txt

统计单词数
zy@zhouyuan:~$ wc test.txt -w
4 test.txt

grep管道符| —— 过滤

写法:|

功能:将符号左边的结果,作为符号右边的输入

// 将cat a.txt的结果,作为grep命令的输入,用来过滤itheima关键字
cat a.txt | grep itheima

// 可以支持嵌套:
cat a.txt | grep itheima | grep itcast

// 过滤test关键字的文件
ls | grep test

// 以列表的形式显示/user/bin文件夹中的文件,并过滤统计行数,以查看该文件夹中有多少个文件
ls -l /user/bin | wc -l

echo命令——在命令行内输出指定内容

功能:在命令行内输出指定内容

语法:echo 参数

  • 参数:被输出的内容
zy@zhouyuan:~$ echo "hi"
hi

`反引号

功能:被两个反引号包围的内容,会作为命令执行

示例:

  • echo `pwd`,会输出当前工作目录
zy@zhouyuan:~$ pwd
/home/zy
zy@zhouyuan:~$ echo `pwd`
/home/zy

tail命令——查看文件尾部内容,跟踪文件的最新更改

功能:查看文件尾部内容,跟踪文件的最新更改

语法:tail [-f -num] 参数

  • 参数:Linux路径,表示被跟踪的文件路径

  • 选项:-f,持续跟踪文件修改

    【另一个终端对该文件做的修改会被跟踪,更新该命令的结果,ctrl+c停止跟踪】

  • 选项:-num,表示,查看尾部多少行,不填默认10行

// 查看根目录
zy@zhouyuan:~$ ls /
bin   etc   lib    libx32  opt   run   srv  usr
boot  home  lib32  media   proc  sbin  sys  var
dev   init  lib64  mnt     root  snap  tmp
// 把根目录追加到test.txt内容中
zy@zhouyuan:~$ ls / >> test.txt
// 查看test.txt内容
zy@zhouyuan:~$ cat test.txt
hello linux
你好
今天星期一
test.txt
bin
boot
dev
etc
home
init
lib
lib32
lib64
libx32
media
mnt
opt
proc
root
run
sbin
snap
srv
sys
tmp
usr
var
// 查看t

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值