linux-ubuntu20.04常用命令

文章目录

  • 基础知识
    • 绝对路径和相对路径
    • 终端命令格式说明
    • 查看命令帮助
  • 快捷键
    • ctrl+c跳出/停止当前的命令
    • ctrl+a和ctrl+e
  • linux基础命令
    • ls、tree命令
    • 文件和文件夹的权限
    • pwd命令
    • cd切换目录
    • 创建、删除文件及目录rm和mkdir命令的使用
    • 复制、移动文件和目录的cp、mv命令
  • linux高级命令
    • 重定向命令>和>>
    • 查看文件内容命令
    • 管道 | 的使用
    • 链接命令
    • 文本过滤查找grep命令
    • 查找文件find命令
    • 压缩和解压命令
    • 文件权限修改命令
    • who命令查看用户
    • 修改用户的密码
    • 添加用户useradd命令
    • 删除用户userdel命令
    • 查看用户和组是否创建成功
    • 查看用户的uid和gid
    • 切换用户su命令
    • 修改用户组
      • 给用户添加或删除附加组
    • 创建用户组
    • 删除用户组
    • 远程登录ssh命令
    • 远程拷贝scp命令
    • 编辑器vim
      • 末行模式
      • 命令模式
    • 安装软件
      • 在线安装与卸载
      • deb格式安装包离线安装与卸载
      • 查看已经安装哪些软件包

基础知识

绝对路径和相对路径

绝对路径就是从根目录算起的,相对路径就是从当前文件所在目录算起的路径叫相对路径。例如:
/home/python/Desktop就是绝对路径
./test/hello就是相对路径

终端命令格式说明

终端命令格式说明
command [-options] [parameter]

每项信息的说明:
command:命令名, 比如: ls、pwd

[-options]:选项,可以有零个、一个或者多个选项,多个选项可以合并,比如使用的 -r 就是选项。

[parameter]:参数,可以有零个、一个 或者 多个参数, 比如: touch 文件名、mkdir 目录名、cd 目标目录(路径),这些文件名和目录名都是参数。

[]:代表可选

选项可以分为短选项和长选项:
短选项的格式: '-'后面接单个字母, 比如:-r
长选项的格式: '–'后面接单词, 比如:–help

对于命令,它的选项和参数一般情况下没有顺序要求,但是scp命令是必须先选项然后在跟上参数。

查看命令帮助

man 命令
命令 --help
–help和man是查看命令帮助的两种方式,主要是查看命令所对应的选项信息。

快捷键

ctrl+c跳出/停止当前的命令

ctrl+a和ctrl+e

ctrl+a可以直接把光标定位到输入的命令的最前方
ctrl+e可以直接吧光标定位到输入的命令的最后方

linux基础命令

ls、tree命令

ls命令只能查看本级目录下的文件。
ls -l以列表方式显示
ls -h把大小单位显示出来,默认是字节,超过1024字节则按K显示,超过1024K则按M显示,以此类推
ls -a显示隐藏文件
tree命令可以以树状结构展示本级及本级目录之下的所有文件和文件夹。(ubuntu默认可能没有这个命令,需要sudo apt-get install tree安装)
tree 目录则可以直接查看目录下的所有文件。

文件和文件夹的权限

linux-ubuntu20.04常用命令_第1张图片

pwd命令

pwd命令可以查看当前所在的工作目录

cd切换目录

命令 说明
cd 目录 切换到指定目录
cd ~ 切换到用户家目录
cd .. 切换到上一级目录
cd - 切换到上一次使用的目录
cd . 切换到当前目录

创建、删除文件及目录rm和mkdir命令的使用

命令 说明
touch 文件名 创建指定文件
rm 文件 删除文件
rm -r 目录名 以递归的方式将目录以及目录下的全部文件删除
rm -i 交互式提示
rm -f 如果文件不存在,也不提示
mkdir 目录名 创建一个目录
mkdir -p 创建所依赖的文件夹,例如mkdir -p AA/BB/CC,会自动创建AA和BB和CC目录
rmdir 目录名 只能删除空目录

总结:
创建嵌套文件夹使用 mkdir –p嵌套目录
删除空目录使用 rmdir 目录名 或者 rm –d 目录名
删除非空目录使用 rm –r 目录名

复制、移动文件和目录的cp、mv命令

命令 说明
cp 文件名 拷贝文件
cp -r 目录名 以递归方式拷贝目录,cp拷贝目录必须加-r参数
cp -a -a参数表示保留原文件的权限
mv 移动文件、移动目录、文件重命名

总结:
拷贝文件防止覆盖使用 cp –i操作
拷贝文件夹使用 cp –r操作,拷贝文件夹并且文件权限不丢失使用 cp –a 操作。
移动文件防止覆盖使用 mv –i 操作
移动文件夹直接使用 mv 即可,mv 还可以给文件和文件夹重命名。

linux高级命令

重定向命令>和>>

重定向也成为输出重定向,把在终端执行显示内容重定向到文件。

命令 说明
> 如果文件存在会覆盖原有文件内容,相当于文件操作中的‘w’模式
>> 如果文件存在会追加写入文件末尾,相当于文件操作中的‘a’ 模式

查看文件内容命令

cat命令,适合查看小型文件
more命令,可以分屏查看大型文件
more命令操作键说明:

操作键 说明
空格 显示下一屏
回车 显示下一行
b 显示上一行
v 进入vim模式
q 退出

管道 | 的使用

管道(|):一个命令的输出可以通过管道做为另一个命令的输入,可以理解成是一个容器,存放在终端显示的内容。
linux-ubuntu20.04常用命令_第2张图片
管道(|)一般结合 more 命令使用,即一条命令运行完,结果太多不好查看,管道符后面接more命令,则可以更好的查看上一条命令的输出内容。

链接命令

命令 说明
ln -s 源文件 软链接文件 创建软链接,类似Windows的快捷方式,源文件必须使用绝对路径
ln源文件 硬链接文件

linux-ubuntu20.04常用命令_第3张图片

软链接注意点:
如果软链接和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径。
删除源文件则软链接失效
可以给目录创建软链接

硬链接注意点:
创建硬链接使用相对路径和绝对路径都可以
删除源文件,硬链接还可以访问到数据。
创建硬链接,硬链接数会加1,删除源文件或者硬链接,硬链接数会减1。
创建软链接,硬链接数不会加1
不能给目录创建硬链接
硬链接的作用是可以给重要文件创建硬链接,能够防止文件数据被误删。

文本过滤查找grep命令

命令 说明
grep -i 忽略大小写
grep -n 显示匹配行号
grep -v 显示不包含匹配的所有行

举例:
linux-ubuntu20.04常用命令_第4张图片
grep结合正则表达式使用:

正则表达式 说明
grep ‘^J’ /var/log/syslog 过滤以J开头的
grep ‘s$’ /var/log/syslog 过滤以s结尾的

查找文件find命令

命令 说明
find -name 根据文件名(包括目录名)去查找
find . -name ‘*a’ 在当前目录下查找以a结尾的文件或文件夹,*是通配符,代表0个或多个任意字符
find . -name ‘?a’ 在当前目录下查找名字为“?a”的文件或文件夹,?是通配符,代表任意一个字符
find . -name ‘*abc"’ 在当前目录下查找名字包含abc字符串的文件或文件夹【最常用】

通配符不仅能结合 find 命令使用,还可以结合其它命令使用, 比如: ls、mv、cp 等,这里需要注意只有 find 命令使用通配符需要加上引号。

压缩和解压命令

tar命令用于压缩解压缩,支持gz和bz2两种压缩格式

命令参数 说明
-c 打包
-v 显示打包或解包的详细信息
-f 指定文件名,必须放到所有选项后面
-z 使用gz格式压缩或解压缩
-j 使用bz2格式压缩或解压缩
-x 解包
-C 解压缩到指定目录

例如:
tar -xzvf test.tar.gz -C /home/security
tar -czvf test.tar.gz 1.txt 2.txt 3.txt

zip和unzip命令用于压缩和解压缩zip格式的压缩包

命令 说明
zip 压缩
unzip 解压缩
unzip -d 解压缩到指定目录

例如:
zip test.zip 1.txt 2.txt 3.txt
unzip test.zip -d /home/security

总结:
压缩文件尽量使用.gz格式,因为占用空间较少。
使用zip命令压缩的文件占用空间比较多, 当时比较通用,操作更加简单。

文件权限修改命令

权限说明

权限 说明
r
w
x 执行
- 无任何权限

角色说明

角色 说明
u user,文件所有者
g group,文件所有者所在的用户组
o other,其他用户
a all,所有用户

使用chmod命令可以修改文件的权限,该命令有2种写法:字母法和数字法。
子母法:

操作符
+ 增加权限
- 撤销权限
= 设置权限

例如:
chmod u+w 1.txt
chmod g-w 1.txt
chmod o+x 1.txt
chmod u=rwx 1.txt

数字法:

权限 权限值
r 4
w 2
x 1
x 0

例如:
chmod 777 1.txt

who命令查看用户

who查看所有的登录用户
whami查看当前使用的用户

修改用户的密码

passwd命令用于修改用户的密码,后面不指定用户名的时候,默认修改当前登录用户的密码。

添加用户useradd命令

命令 说明
useradd -m 自动创建用户的家目录,家目录的名字就是用户名
useradd -g 指定用户所属的用户组,不指定则默认创建和用户名同名的用户组

删除用户userdel命令

命令 说明
userdel -r xiaoming 删除xiaoming这个用户,-r参数代表同时删除这个用户的家目录

查看用户和组是否创建成功

查看用户是否创建成功,可以cat /etc/passwd这个文件
查看用户组是否创建成功,可以cat /etc/group这个文件
linux-ubuntu20.04常用命令_第5张图片

passwd文件中的每项信息说明,以root❌0:0:root:/root:/bin/bash为例:
第一个:用户名
第二个:密码占位符
第三个:uid, 用户id
第四个:gid, 用户所在组id
第五个:用户描述, 可选,
第六个:用户的主目录所在位置
第七个:用户所用 shell 的类型,一般由bash或者sh,默认不设置是sh类型

group文件中的每项信息说明, 以laowang❌1001:为例:
第一个:用户组名
第二个:用户组密码占位符,一般Linux系统的用户组都没有密码的
第三个:组id

查看用户的uid和gid

使用id命令。例如id laowang

切换用户su命令

直接使用su 用户名即可完成用户的切换

修改用户组

使用usermod命令可以修改用户的组,也可以给用户设置附加组:

命令 说明
usermod -G 给用户设置一个sudo附加组
usermod -g 修改用户组
root@linux:/home/xiaoming# usermod -G sudo xiaoming
root@linux:/home/xiaoming# id xiaoming
uid=1000(xiaoming) gid=1000(xiaoming) groups=1000(xiaoming),27(sudo)
root@linux:/home/xiaoming# 

给用户添加或删除附加组

命令 说明
gpasswd -a xiaoming sudo 给小明添加sudo附加组,xiaoming必须在前,sudo在后
gpasswd -d xiaoming sudo 给小明删除sudo附加组,xiaoming必须在前,sudo在后

创建用户组

groupadd test代表用来创建(添加)一个用户组"test"
groupadd -m -g test xiaoming代表创建一个用户xiaoming,并指定xiaoming用户组是test

删除用户组

groupdel test代表删除用户组“test”

远程登录ssh命令

ssh -p 22 [email protected]
以上命令中-p代表指定端口号,security代表用户,@后面是服务端的ip地址|

远程拷贝scp命令

把本地文件拷贝到远端目录:scp -r 本地文件 [email protected]:/home/security
把远端文件拷贝回本地:scp -r [email protected]:/home/security/1.txt 本地目录

编辑器vim

vim 是一款功能强大的文本编辑器,也是早年 Vi 编辑器的加强版,它的最大特色就是使用命令进行编辑,完全脱离了鼠标的操作。
linux-ubuntu20.04常用命令_第6张图片

末行模式

:w 保存
:wq 保存退出
:x 保存退出
:q! 强制退出
:/张三 搜索张三,按n从光标位置向下查找下一个结果,按N从光标位置向上查找下一个结果
:%s/张三/李四/g 全局将张三替换成李四
:开始行数,结束行数s/张三/李四 将行数范围内局部张三替换成李四
:set nu 显示行号

命令模式

命令 说明
yy 复制光标所在行内容
p 粘贴
dd 删除光标所在行内容
V 选中光标所在行内容
u 撤销
ctrl + r 反撤销
> 向右缩进
< 向左缩进
. 重复上一次命令
G 把光标移到最后一行
gg 把光标移到第一行
dG 删除光标所在行及以下全部内容
数字+G 回到指定行
shift+6 回到当前行的行首
shift+4 回到当前行的末尾
ctrl+f 下一屏
ctrl+b 上一屏

安装软件

在线安装与卸载

sudo apt-get install xxx这条命令代表在线安装xxx软件。
sudo apt-get remove xxx这条命令代表卸载xxx软件。

deb格式安装包离线安装与卸载

命令 说明
dpkg -i xxx.deb 安装xxx.deb软件
dpkg -r xxx.deb 卸载xxx.deb软件

查看已经安装哪些软件包

两种方法,下述命令中,xxx填写你要查找的软件包名:
sudo apt list | grep 'xxx'
sudo dpkg -l | grep 'xxx'

你可能感兴趣的:(ubuntu,linux,ubuntu,运维)