Linux 基础命令

文章目录

  • 一、安装及部署Linux环境
  • 二、常用的命令
    • [1. `cd` 切换文件夹](#1. cd 切换文件夹)
    • [2. `ls` 查看目录的内容](#2. ls 查看目录的内容)
    • [3. `mkdir` 创建文件夹](#3. mkdir 创建文件夹)
    • [4. `gedit` / touch创建空文件](#4. gedit / touch创建空文件)
    • [5. `rm` 删除文件](#5. rm 删除文件)
    • 快捷键
  • 三、命令格式
    • [1. 查看命令帮助信息](#1. 查看命令帮助信息)
  • 四、基本命令进阶
    • [1. `ls`的权限和使用](#1. ls的权限和使用)
    • [2. `cp`拷贝文件](#2. cp拷贝文件)
    • [3. `mv`移动/重命名文件](#3. mv移动/重命名文件)
    • [4. `>` 重定向](#4. > 重定向)
    • [5. `cat / more`查看文件内容](#5. cat / more查看文件内容)
    • [6. ` | ` 管道](#6. | 管道)
    • [7. `ln` 链接](#7. ln 链接)
    • [8. `grep` 查找文件内容 (常用)](#8. grep 查找文件内容 (常用))
    • [9. `find`查找文件](#9. find查找文件)
    • [10.`tar` 归档打包](#10.tar 归档打包)
    • 11.文件压缩解压
  • 五、命令扩展
    • [1. `which` 命令](#1. which 命令)
    • [2. `su` 切换账号](#2. su 切换账号)
    • [3. `passwd` 设置密码](#3. passwd 设置密码)
    • [4. `exit` 退出登录账户](#4. exit 退出登录账户)
    • [5. `who` 查看登录用户](#5. who 查看登录用户)
    • [6. `reboot、shutdown` 关机重启](#6. reboot、shutdown 关机重启)
    • [7. `chmod` 修改文件权限](#7. chmod 修改文件权限)
  • [六、vim 编辑器](#六、vim 编辑器)

一、安装及部署Linux环境

1、下载 Vmware

2、下载镜像文件:(官网难进)

阿里云的CentOS镜像站:https://mirrors.aliyun.com/centos/7/isos/x86_64/

二、常用的命令

在终端打开。

1. cd 切换文件夹

  • cd /home 绝对路径以根目录开头
  • cd admin 相对路径不以根目录开头
  • cd ../ 返回上级目录
  • cd ~ 到自己的家目录/home/ admin
  • cd - 电视回看功能

pwd 查看当前目录
clear 清屏(往上翻记录都存在,相当于翻页)

2. ls 查看目录的内容

ls -l 显示详细列表
ls - lh 把文件大小以人性化的方式显示
ls -a 显示所有的文件,包含隐藏文件,隐藏文件是.开头的文件
ll 等于ls -l

3. mkdir 创建文件夹

mkdir img 在当前目录下创建文件夹
mkdir /home/ admin/ img 以绝对路径创建文件夹
mkdir /home/admin/a/img -p 如果 上级目录不存在,加上-p自动创建父目录
mkdir a b当前目录创建多个文件夹
mkdir a/{c,d}指定目录下创建多个文件夹
mkdir .abc 以``.开头是创建隐藏文件夹

4. gedit / touch创建空文件

touch abc. txt 在当前目录下创建, 如果指定了目录,必须保证上级目录存在.
touch .abc 创建隐藏文件
gedit abc.txt (常用) 使用记事本打开文件,如果当前目录存在直接打开文件,如果不存在,也会直接创建并打开

5. rm 删除文件

rm a.txt 删除文件
rm abc -r 删除文件夹
rm * -r 删除所有文件,但不能删除隐藏文件

快捷键

在敲出 文件/目录/命令的前几个字母之后,按下tab键:

  1. 如果输入的没有歧义,系统会自动补全
  2. 如果还存在其他文件/目录/命令,再按一下tab键,系统会提示可能存在的命令

小技巧:

上 / 下光标键可以在曾经使用过的命令之间来回切换

如果想要退出选择,并且不想执行当前选中的命令,可以按ctrl + c
ctrl + shift + = 放大终端窗口的字体显示
ctrl + - 缩小终端窗口的字体显示

三、命令格式

1. 查看命令帮助信息

一般不常用命令查看信息,翻译不准或者都是英文说明

直接网上搜索查看就行

  1. -- help:
    ls --help:查看ls的相关命令文档说明
  2. man xx:
    man ls:查看ls的相关命令文档说明
    ( q 退出文档说明 )

四、基本命令进阶

1. ls的权限和使用

  1. 权限:

    drwxrwxr-x: d 代表文件夹 , - 代表文件
    rwx rwx r-x:r可读 w可写 x执行 -禁止

    第一组指文件的拥有者的权限,第二组代表文件拥有的组的权限,第三组代表其他用户的权限

  2. 使用

    ls 可直接查看其他目录的内容 :ls -la /home
    ls *txt:查看当前目录下的所有以txt结尾的文件
    ls \*txt:查看当前目录下的*txt的文件,( \ 代表转义符)
    ls a?:查看当前目录下的ax的文件

2. cp拷贝文件

cp 1.txt 2.txt:拷贝文件,源文件拷贝到目标文件(相对路径)
cp /home/1.txt /other/2.txt:拷贝到绝对路径
cp abc abc_ bak -r :拷贝文件夹(必须加 -r)

3. mv移动/重命名文件

mv 1.txt 2.txt:同一文件下移动,相当于重命名
mv abc ~ :移动文件夹到指定(家)文件目录下
mv ../1.txt .:把上一级目录的1.txt移动到当前目录下

4. > 重定向

ls > 1.txt:把命令返回的结果输出到文件中,会覆盖之前的内容(默认情况命令返回的结果都是显示在屏幕中)
ls >> 1.txt:把命令返回的结果输出到文件中,追加内容的方式

5. cat / more查看文件内容

区别:文件较多时,cat命令会把所有的文件全部显示,more会先显示一部分,翻阅较多文件比较友好。
cat 1.txt 把文件的内容全部显示到屏幕中
cat 1.txt 2.txt: 查看多个文件内容
cat 1.txt 2.txt > 3.txt 把多个文件的内容合并到新的文件中

ls / > 1.txt
more 1.txt: 查看内容多的文件,按空格键往下翻页,按b按键往回翻页(back),按q键退出

6. | 管道

管道就是把左边的结果,右边做一些处理后返回的结果。

把左边的命令返回的结果交给右边命令进行处理

ls -l / | more
ls -al / | grep home

7. ln 链接

软链接

软连接本身不存储内容,只记录源文件的名称

如果源文件被删除,重新再建立一个新的名称一样的文件,软链接不被删除,就会指向新的这个文件

ln -s 1.txt 1_link:给1. txt创建一个软链接,相当于windows中的快捷方式

给其他目录创建一 个软链接,如果源文件不写绝对路径,软链接指向的文件是不存在的:

正确写法:ln -s /home/admin/1. txt ~/1_link

报错写法:ln -s 1.txt ~/1_link
ln -s abc abc_ link :给目录创建软链接

注意:一定要加 -s 标志才是软链接

硬链接(很恨少用)

硬链接本身占空间,相当于把源文件复制一份,与源文件同步变化,删除硬链接文件不影响源文件,不能给目录创建硬链接。

使用 ll 查看时,有一个数字,代表有几个文件能同步发生变化


ln 1.txt 1 hard_link

8. grep 查找文件内容 (常用)

grep hello test.txt

在某个文件中查找包含hello的内容,只要一行中有hello会把整行显示

grep -niv hello test.txt

n显示查找到的内容的行号,i查找时不区分大小写,v反向查找,查找不包含hello的行

grep -n hello /home/admin -r

查找整个目录中的所有文件包含hello的内容,包括二级、三级目录。

grep -ni ^h/t$ test.txt (^以什么开头,$以什么结尾)

9. find查找文件

find /home -name 1. txt:在/home目录下查找文件名为1. txt的文件
find ~ -name '*txt': 在自己主目录下查找所有以txt结尾的文件(需要' ')

注意:-name 一定不能省

10.tar 归档打包

  1. 打包
    tar cvf a.tar 1.txt 2.txt

    f 必须放在最后,f 后面的第一个参数代表要生成的文件名, 后面所有的参数是要打包的文件
    tar tf a.tar

    列出包里面的文件

  2. 解包
    tar xvf a.tar 如果没写目录,把包里面的文件解开放到当前目录
    tar xvf a.tar -C tar 解包到指定的文件夹,文件夹需要提前创建好


都需要加上-f

常用参数:

-c 生成档案文件,创建打包文件

-v 列出归档解档的详细过程,显示进度
-f 指定档案文件名称

-t 列出档案中包含的文件

-x 解开档案文件

11.文件压缩解压

gzip(用的较多)

  • 压缩
    1、打包
    tar cf a.tar * 打包所有文件到 a.tar目录下
    生成a. tar文件
    2、压缩
    gzip -r a.tar
    生成 a.tar.gz 文件
  • 解压
    1、解压
    gzip -d a.tar.gz
    生成a. tar文件
    2、解包
    tar xf a.tar -C ~/atar
    解包到指定文件夹中
实际常用一步到位方式

一步到位打包并且压缩:
tar zcf b.tar.gz *txt 以gzip的方式打包并且压缩

一步到位解压并且解包:
tar zxf b.tar.gz -C btar 以gzip的方式解压并且解包

bzip2

压缩:
tar jcf j.tar.bz2 *txt

解压:
tar jxf j.tar.bz2 -C jtar

zip

zip -r zz *txt

zz 代表要生成的压缩文件,不需要写扩展名,会自动生成zip扩展名

unzip -d zzip zz.zip

解压时会自动创建zzip目录,并解压到此目录下

压缩率: zip < gzip < bzip2

通用性: zip > gzip > bzip2

五、命令扩展

1. which 命令

查看目录文件下的当前命令

2. su 切换账号

Centos下切换到 root 的简单命令: su

3. passwd 设置密码

在管理员下:passwd admin 修改普通admin用户

在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户密码。

在普通用户下:passwd 直接修改密码

用户也可以直接使用该命令来修改自己的密码,而无需在命令后面使用用户名。

4. exit 退出登录账户

如果是图形界面,退出当前终端;

如果是使用ssh远程登录,退出登陆账户;

如果是切换后的登陆用户,退出则返回上一个登陆账号。

5. who 查看登录用户

who命令用于查看当前所有登录系统的用户信息。

admin pts/0

admin tty1
pts代表一个终端,tty代表用户登录了操作系统。
pkill -kill -t tty1 :清除(杀si)某个用户

6. reboot、shutdown 关机重启

  • reboot 不需要权限
  • shutdown 需要root权限
    shutdown -h now :系统立刻关机
    shutdown -h +10 :系统10minutes后关机

7. chmod 修改文件权限

字母法

u 文件的拥有者
g 文件的拥有的组
o 其他用户
a 所有用户

+ 添加权限
- 删除权限
= 设置权限(把之前的权限换成新的权限)
chmod u+r test.txt 给文件的拥有者添加 r (读)权限

r
w
x
- 没有任何权限

数字法

r 4
w 2
x 1
- 0
chmod 123 test. txt

第一位数字代表自 己的权限,第二位代表自己组的权限,第三位代表其他人的权限
3=1+2代表 wx 权限
5=4+1代表 rx 权限

注意:数字只有 0-7 最大权限 777

六、vim 编辑器

简介:vi(vim)是"Visual interface"的简称,它在Linux 上的地位就仿佛Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制。Vi不是一个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。vi没有菜单,只有命令,且命令繁多。

vim 有三种基本工作模式:

命令模式、文本输入模式、末行模式

vim有很多操作命令,可直接baidu搜索查看!

相关推荐
(⊙o⊙)~哦28 分钟前
linux 解压缩
linux·运维·服务器
牧小七2 小时前
Linux命令---查看端口是否被占用
linux
鸡鸭扣3 小时前
虚拟机:3、(待更)WSL2安装Ubuntu系统+实现GPU直通
linux·运维·ubuntu
友友马3 小时前
『 Linux 』HTTP(一)
linux·运维·服务器·网络·c++·tcp/ip·http
记得开心一点嘛4 小时前
在Linux系统上使用Docker部署javaweb项目
linux·运维·docker
Tak1Na4 小时前
2024.9.18
linux·运维·服务器
Yana.nice4 小时前
linux中将文本转为unix格式
linux
安得权4 小时前
Ubuntu 20.04 部署 NET8 Web - Systemd 的方式 达到外网访问的目的
linux·前端·ubuntu
让学习成为一种生活方式5 小时前
解析药用植物重楼甾体皂苷生物合成中的连续糖基化及其抗真菌作用-文献精读49
linux·数据库·算法·天然产物化学
凯哥是个大帅比5 小时前
ubuntu20.04 GLIBC从2.35降级到2.31
linux