首页 > 系统相关 >CentOS Linux基础操作

CentOS Linux基础操作

时间:2023-05-29 23:36:42浏览次数:51  
标签:文件 tar CentOS Linux test 操作 权限 链接 光标

Cent OS Linux

Linux基础操作

ifconfig 查看端口号

ls 查看当前文件夹下内容

  • -a 显示指定文件夹下隐藏文件
  • -l 以列表的方式显示该文件夹
  • -h 配合-l显示文件大小

ll的本质是ls -l,只是ll是Linux的第三方插件,系统如果没有安装,会显示没有此命令。

pwd 查看当前所在文件夹

touch + 文件名 创建文件夹

mkdir + 目录名 创建目录

直接写

mkdir a/b/c/python 

会告诉你没有对应文件,这里的对应文件夹是指a文件夹 我们当然可以一步一步单独创建文件夹,最后创建python

也可以使用 -p 进行递归创建

mkdir a/b/c/python -p 

rm + 文件名 删除文件名

rm + 文件夹名 -r 删除文件夹

cd + 目录名 切换文件夹

​ ./ 表示当前的目录或文件夹下 ../ 表示上一级目录

cp + 文件名 拷贝文件

mv + 文件夹 移动文件

tree + 文化名 以树状方式显示目录结构

clear 清屏

自动补全

tab 可以帮你快速补全文件名称

Linux高级操作

chmod 文件权限设置

image-20230528220813239

以“公共”为例。它的权限显示是"drwxr-xr-x",一共由10位组成

第一位:文件类型

  • -表示普通文件,例如图里的nohup.out,它是一个二进制文件

  • d 表示文件夹,也就是目录。anaconda3就是一个文件夹

  • b 表示块文件,磁盘文件,比较少用到

  • c 字符串,比较少用到

后面是以每三位为一个整体,分为三组权限:

  • 文件所有者(Owner):文件的创建者
  • 用户组(Group):属于同一组的其他用户
  • 其它用户(Other Users):不在同一组的用户,比如游客权限

修改文件权限:

字母法:chmod u/g/o/a +/-/= rwx 文件
  • u: user表示文件拥有者
  • g: group表示与文件所有者属于同一组者
  • o: other表示其他人
  • a: all表示这三者皆是
  • +: 增加权限
  • -: 撤销权限
  • =: 设定权限
  • r/4: read读取,查看权限
  • w/2: write写,修改权限
  • x/1: excute可执行,是否可以运行
  • -/0: 不具备任何权限

可执行表示表示文件允许被执行,例如一个python文件a.py,如果它的权限是rw-,我们可以打开这个 python文件,添加或者修改里面的内容。但你想用命令行运行它的时候:python3 a.py。会被告知你没有 权限运行

chmod u=rwx,g=rx,o=r 文件

当然也可以上面都不写:chmod u=,g=,o= 文件 这样表示此文件谁都没有权限进行读、写、执行

执行chmod u=rwx,g=rx,o=r 文件  等同于:chmod u=7,g=5,o=4 文件

甚至可以简写为 chmod 754 文件:

  • 文件所有者:读、写、执行权限
  • 同组用户:读、执行的权限
  • 其它用户:读的权限

cp 将给出的文件或目录复制到另一个文件或目录中

  • -a 递归复制,保持文件所有权限

  • -i 交互式复制,在覆盖目标文件之前给用户给出提示确认

  • -r 若源文件是目录文件,则递归复制该目录下所有子目录和文件,目标文件必须是同一个目录名

  • -v 显示拷贝后的路径描述

    cp + 源文件地址 + 复制后文件地址  -irv
    

rm 删除命令

  • -i 交互式执行
  • -r 递归删除,删除文件夹必须参数
  • -d 删除空目录
  • -f 强制删除,忽略不存在的文件,无需提示

切记!!!不要执行 rm -rf /*

例如:需要删除a.txt文件时,可以写作 rm a.txt -i

则会在删除前进行询问,输入y表示同意删除,输入n表示不同意

删除文件夹时,里面如果有文件,则是写作 rm Logs -r

递归删除Logs里面的文件

所以 rm -rf /* 是表示:强制执行递归删除根目录下的所有文件

mv 移动文件或者目录,也可以给文件或者目录重命名

  • -i 交互式执行,如果mv操作导致已存在文件的覆盖,系统会询问是否重写,以避免误覆盖文件
  • -v 显示移动后的路径
mv /a/b/test.py /a/c/test_1.py 

将/a/b/test.py移动到/a/c/下,并改名为test_1.py

无论原来的文件名为什么,移动后的文件以最后写的文件名为准

所以如果是在同目录下运行mv,则实际为重命名文件

重定向命令:>

将命令执行结果重定向到一个文件。

为什么会有重定向?在Linux的操作中,通过代码制定重定向语言,就像是一个日志的记录,会将你的操 作统一记录。当你找不到想要的文件或者忘记自己曾经的操作时,通过查看重定向写入的文件,可以看 到自己以往的操作,也许这个文件已经被你删掉了。

cat 查看或者合并文件内容

image-20230528231056210

结合重定向的操作可以看到,将查看目录文件的操作重定向到test.txt的文件中,再用cat来查看文件里 面的内容。

image-20230528231311641

通过 cat test.txt README.txt > test1.txt ,我们将这两个文件的内容重定向到了test1.txt中。

建立链接文件:ln

Linux链接文件类似于Windows下的快捷方式。

链接文件分为软链接和硬链接。

软链接:软链接不占用磁盘空间,源文件删除则软链接失效。

硬链接:硬链接只能链接普通文件,不能链接目录。

硬连接:ln 源文件 链接文件 
软连接:ln -s 源文件 链接文件 
  • 硬链接后,两个文件占用相同大小的硬盘空间,即使删除了源文件,链接文件还是存在。
  • 硬链接更像是凭空复制了一个文件,而软链接是可以在生成的文件后面看到一个箭头指向了源文件。当 修改了源文件之后,硬链接和软链接的文件内容都被更改了
  • 硬链接和复制文件有本质的区别:硬链接虽然是生成了一个独立的文 件,但是修改源文件,硬链接的文件也会跟着改变,表示两个文件并不是完全独立的。而当源文件被删 除之后,硬链接的文件就如同是一个独立的文件了,但软链接的文件却像消失了一样,虽然可以看见, 却不能正常访问了。

grep 文本搜索

grep允许对文本文件进行模式查找。如果找到匹配的数据, grep打印包含此数据的所有行

grep一般格式为: grep [-选项] ‘搜索内容串’文件名

在grep命令中输入字符串参数时,最好引号或双引号括起来

  • -v 显示不包含匹配文本的所有行
  • -n 显示匹配行及其行号
  • -i 忽略大小写

image-20230528232857280

通配符

用来做模糊查询的一种特殊字符。 统配字符注意有

*:代表0个或多个任意字符

?:代表任意一个字符 

[列举的字符]:代表的任意一个字符 

一般会结合查找命令进行使用,比如ls和find命令

find 搜索

来在特定的目录下搜索符合条件的文件,也可搜索特定用户属主的文件

find ./ -name test.sh   查找当前目录下名为test.sh的文件
find ./ -name ‘*.sh’    查找当前目录下后缀为.sh的文件
find ./ -name ‘[A-Z]*’  查找当前目录下所有以大写字母开头的文件
find -name ‘*.txt’

查找的是当前目录下所有以 ".txt" 结尾的文件

显示出来的结果中,不仅是将当前目录下满足条件的文件找到了,也找到了子目录下满足条件的文件。

其实这里的 *.txt 是正则表达式的一种写法

tar 打包及压缩文件

  • -c 生成档案文件,创建打包文件
  • -v 列出归档、解档详细过程,显示进度
  • -f 指定档案名称,f后面一定是.tar文件,所以必须放在选项最后
  • -x 解开档案文件
  • -z 压缩

这里的参数中,f是必须放在最后的,其他的顺序随意。

tar -cvf test.tar * 
将当前目录下的所有文件全部打包成test.tar tar
保存在当前目录下

同样,我们可以用tar将文件进行压缩打包

tar本身是没有压缩功能的,但在tar命令中增加一个选项(-z)可以调用gzip实现了一个压缩的功能,实行 先打包后压缩的过程。

tar -czvf test.tar.gz * 
将当前目录下的所有文件全部打包并压缩成test.tar.gz 
保存在当前目录下

image-20230528235422866

然后,我们可以使用tar进行解压操作

现将test.tar.gz移动到当前目录中的test文件夹中

image-20230528235703450

image-20230528235807653

进入到test目录中,然后通过 tar -zxvf test.tar.gz 进行解压 
也可以使用命令来指定解压到哪一个目录下面,例如: 
tar -zxvf test.tar.gz -C ./test 
将test.tar.gz文件解压到当前目录下的test文件夹中 
注意:这里的-C,C必须是大写

sudo -s 切换到管理员账号。

因为一般的游客权限是无法对Linux进行文件的写入或执行的,所以当你没有权限的 时候,可以执行这个命令,写换到服务器的管理员账号,但是你得知道密码:

yixuejiaoyu

whoami 查看当前用户

一般在自己电脑上使用这个命令,出现的都是root管理员权限。

但在公司服务器上登陆时,可能会出现 guest游客的权限。

所以结合sudo -s,可以更改权限。

频繁更改权限来执行自己的文件会觉得很麻烦,也可以直接在需要执行的命令前添加sudo来快 捷执行。

sudo python3 test.py 以管理员的权限运行python文件test.py

who

查看所有的登录用户。这里的登陆用户是不包括root管理员的。所以一般查看时,是不会显示出来的

exit 退出登录账户。

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

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

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

reboot、shutdown 关机与重启

reboot            重新启动操作系统
shutdown -r now   重新启动操作系统,shutdown会给别的用户提示
shutdown -h now   立刻关机,其中now相当于时间为0的状态
shutdown -h 20:05 系统在今天的20:25会关机
shutdown -h +10   系统再过10分钟后自动关机

软件安装

sudo apt-get update 更新源 
以管理员的权限从更新源下载安装包。这里的更新源是一个网址,表示向这个网址进行请求,将网址上的软件 包下载下来 
sudo apt-get install package 安装包 
以管理员的权限安装这个安装包。安装包就是从上面下载的那个。 
sudo apt-get remove package 安装包 以管理员的权限删除这个安装包。

一般的更新源网址都是国外的,下载的速度可能回比较慢,我们可以直接在网上先找到国内的更新源, 再进行下载,速度会比较快

编辑器vim

这是Linux自带的编辑器,用于在Linux内部进行文本或者代码的编辑。直接输入 vim 就能直接进入 编辑器。在shell环境(与Python一样,也是一种脚本语言。开头的提示符为$)中,输入 vi 同样也可以 进入此编辑器。我们使用的Linux环境就是直接的shell环境,如果vim无法进入,就使用vi。

vim 一共有三种模式:

命令模式

任何时候,只需要按下ESC键,就会进入命令行模式。此时的编辑器命令是用来完成编辑器中对应 动作的。如果命令正确就会执行,如果不正确,会在最下方以红色标注出来,告诉你命令不存在或不正 确。在vim的命令模式中,请务必注意命令的大小写。

编辑模式

在命令模式中,输入小写字母 i、a、o、c、r、s都会进入编辑模式,虽然它们的命令操作结果都不 相同。这个模式中,你可以进行文本的编辑。

末行模式

在命令模式中,输入英文的冒号 : ,就可以在窗口最下面看到这个冒号,也表示进行了末行模式。 进入末行模式,我们使用最多的是对文件退出的操作

命令模式

移动命令
h:左移
j:下移 
k:上移 
l:右移 
M: 光标移动到中间行
L: 光标移动到屏幕最后一行行首 
G: 移动到指定行,行号 -G 
w: 向后一次移动一个字 
b: 向前一次移动一个字 
Ctr-d: 向下翻半屏 
Ctr-u: 向上翻半屏 
Ctr-f: 向下翻一屏 
Ctr-b: 向上翻一屏 
gg: 光标移动文件开头 
G: 光标移动到文件末

当然,也可以通过键盘的方向键来移动光标。但是万一遇到没有方向键的键盘呢?而且其中的命令可以 快速地到达文本的某一个位置,而不是通过按键一个个的移动。

删除命令 
x: 删除光标后一个字符,相当于 Del 
X: 删除光标前一个字符,相当于 Backspace(普通的删除Delete键) 
dd: 删除光标所在行,n dd 删除指定的行数 
D: 删除光标后本行所有内容,包含光标所在字符 
d0: 删除光标前本行所有内容,不包含光标所在字符 
dw: 删除光标开始位置的字,包含光标所在字符
撤销命令 
u: 一步一步撤销 
Ctr-r: 恢复刚才的撤销
重复命令 
.: 重复上一次操作的命令。这里是英文的句号,也就是一个点
复制粘贴 
yy: 复制当前行,n yy 复制 n 行 
p: 在光标所在位置向下新开辟一行,粘贴
可视模式 
v: 按字符移动,选中文本 
V: 按行移动,选中文本可视模式可以配合 d, y, >>, << 实现对文本块的删除,复制,左右移动
替换操作 
r: 替换当前光标所在位置的字符 
R: 进入替换的状态(窗口下面会出现replace的字样),替换当前行光标后的字符。完成替换后可以按esc 退出。 
也可以在末行模式进行替换操作。 
例如将文本中的 "iii" 替换为 "学习python" 
:%s/iii/学习python/g 
或者是将第一行至第10行之间的d替换成12 
:1, 10s/d/12/g

注意:%表示整个文件, 1, 10表示1到10行范围内,s表示替换,g表示全局

查找命令 
/:输入斜杠/后 在输入需要查找的内容 
n: 下一个 
N: 上一个

编辑模式

i: 插入光标前一个字符 
I: 插入行首 
a: 插入光标后一个字符 
A: 插入行未 
o: 向下新开一行,插入行首 
O: 向上新开一行,插入行首 
这里分别是大小写的英文o,不是数字零

末行模式

: 输入冒号,进入末行模式。在末行模式中 
w:保存 
wq:保存并退出 
q!:不保存并强制退

标签:文件,tar,CentOS,Linux,test,操作,权限,链接,光标
From: https://www.cnblogs.com/xhboo/p/17442001.html

相关文章

  • 小灰灰深度学习day4——数据操作之张量(torch)
    震惊了!!!在python中,y=x+y;与y+=x;竟然有区别,且看如下代码:importtorch'''x=torch.arange(12)print(x)#reshape可以改变张量的形状而不改变元素的数量和元素值X=x.reshape(-1,3)print(X)#shape属性可以访问元素的张量的形状print(X.shape)#numel()得到张量......
  • 2023.5.29Linux系统压缩打包
    02.Linux系统压缩打包1.zip压缩工具2.TAR压缩工具3.TAR实践案例windows下我们接触最多的压缩文件就是rar格式,但linux有自己所特有的压缩工具如果希望windiows和linux互相能使用的压缩工具,建议.zip格式压缩的好处主要有节省磁盘空间占用率节省网络传输带宽消耗网络传输更......
  • Windows 局域网批量安装可以帮助您快速在局域网内的多台计算机上部署 Windows 操作系
    Windows局域网批量安装可以帮助您快速在局域网内的多台计算机上部署Windows操作系统,提高部署效率。以下是基于WindowsServer环境下常用的局域网批量安装方法:基于Windows部署服务(WDS)的批量安装Windows部署服务(WDS)是用于集中式部署Windows操作系统的一种Windows......
  • 操作系统(3.2)--作业和作业调度
    批处理系统中的作业1.作业和作业步(1)作业(Job)。包含了通常的程序和数据,而且还应配有一份作业说明书。在批处理系统中,是以作业为基本单位从外存调入内存的。(2)作业步(JobStep)。每个作业都必须经过若千个相对独立,又相互关联的顺序加工步骤才能得到结果。我们把其中的每一个加工......
  • Linux开发
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • Spring+SpringMVC19_Spring练习-用户管理操作3
    一、用户列表展示1   二、用户列表展示2  三、用户添加操作-添加页面展示  四、用户添加操作-添加数据到数据库  五、用户添加操作-添加数据到数据库2  六、删除用户操作    ......
  • hdu 2473(并查集+删除操作)
    解题思路:这道题有并查集的删除操作,如果直接对这一棵树进行删除节点操作肯定是很困难的。所以可以建立虚拟节点,只要有一个节点要被删除,就直接把它投影到虚拟节点上,即用这个虚拟节点来代替我们要删除的节点。这样我们就不需要用对已有的树形结构进行改动了。这个想法我在DragonBalls......
  • 2023-05-29:给你一个由 n 个正整数组成的数组 nums 你可以对数组的任意元素执行任意次
    七、设计算法,仅使用三次实数乘法即可完成复数a+bi和c+di相乘。算法需接收a、b、c和d为输入,分别生成实部ac-bd和虚部ad+bc。文心一言:可以使用如下算法来计算复数a+bi和c+di的积,且只需进行三次实数乘法:1.将a和b相乘,得到ab;2.将c和d相乘,得到cd;3.将ab+cd赋......
  • 网安--Linux文件描述符和重定向
    文件描述符FileDescriptor(系统自带)0    标准输入(stdin) 键盘1    标准输出(stdout)  显示器2    标准错误输出(stderr) 显示器重定向符号>和>>    输出重定向&>       表示将一个流重定向到另一个文件描述符<和<<   输入重定向输出重......
  • Linux操作系统日志审计-关于secure和messages两个重要的日志的logrotate配置
    关于Linux操作系统中有两个日志非常的重要的,常常用来对操作系统的活动进行审计,两个日志文件分别是:/var/log/secure/var/log/messages 其中/var/log/secure是 securityandauthentication-relatedmessagesanderrors,安全与认证相关的信息和错误对于 /var/log/messages......