Linux常见指令

Xshell

热键:

alt+enter:全屏

ctrl+shift+c/v:复制粘贴,或者鼠标右键

ctrl+C:终止程序

ctrl+D:按两次,就退出软件

ctrl+R:输入历史命令里的残缺片段,就会自动搜索,并补全

[Tab]按键:按两下,具有『命令补全』和『档案补齐』的功能

*:表示一个通配符,匹配任意文件名

上下键可以翻历史命令

如果什么指令没有,可以搜索 centos yum安装xxx,获取相关指令

sz 文件:把文件发送到Windows桌面上

shell外壳

是什么:

用户执行某种功能的时候,不是直接让操作系统执行对应指令的,而是先交给外壳程序(一般是图形化界面和命令行。Windows将图形化界面写入 操作系统内核了,Linux没有)

外壳系统是 介于用户和操作系统之间的软件。将命令翻译给核心处理,将核心的处理结果翻译给使用者

为什么:

shell外壳的存在,可以对请求进行合法性检查,变相的保护OS

怎么办:

bash会创建一个子进程,帮用户进行命令行解释,bash只要等着就行

shell和bash的区别:

shell是外壳程序的统称,bash是具体的一个外壳程序

补充知识

文件

1、文件=文件属性+文件内容

        属性也是数据,是数据就需要保存

        未来对文件的任何操作都是 对属性的操作 以及 对内容的操作

        这些操作是使用指令控制文件,或者编程访问文件

2、同一个目录下,不允许存在同名文件

3、Linux中,一切皆为文件。

        大部分指令都是文件,在磁盘上存在。

4、Linux的整个文件目录是一个多叉树,Windows也是

路径

在系统层面表示一个特定的文件

路径必须具有唯一性

家目录

Windows和Linux都是多用户操作系统

桌面本质是文件夹,当登录Windows时

1、确认是谁

2、根据用户名。找到该用户目录下的“桌面文件夹”

3、将桌面文件夹显示成为图形化界面

新老用户看到的桌面不一样,每个用户都有自己独有的桌面

当前用户的家目录会存放这个用户强相关的文件

cd ~:进入用户家目录

Linux和Windows一样,但是在XShell里没有桌面、下载等,是因为这里用的是服务器,没有桌面的概念

在虚拟机上,使用cd~,然后ls就能看到

指令的本质

大部分指令都是文件,在磁盘上存在。

指令本质就是程序,就是用C语言写的一个可执行程序,被放在了这个路径下。也是一个文件

安装和卸载其实就是把对应的可执行程序 拷贝/删除 到系统路径下

常用指令

pwd指令

显示用户当前在Linux系统中所处的路径,即下文的“当前路径

类似于

Windows里的斜杠,以及Linux的反斜杠,称之为路径分隔符

两个路径分隔符之间一定是一个“文件夹”,路径末端一定是一个普通文件或者文件夹

ls指令

ls:

罗列出当前路径下的文件名

显示文件名属性

ls -l:

也可以用ll 简化的执行ls -l,ll就是ls -l的别名

显示的是文件的更多属性(详细属性),作用类似于打开文件的图形化界面

ls -la:

显示所有文件,包括隐藏文件

一个点,两个点是特殊的文件名,不会在ls -l中显示

以点 . 开头的文件叫做隐藏文件

蓝色的代表的是创建的目录,也就是所谓的“文件夹”

任何目录下,都会默认具有两个隐藏目录,即 . 和 .. 

. :表示当前路径

执行一个程序就要把这个程序加载到内存里,也就是访问一个文件都必须先找到这个文件

. /文件:用来执行当前路径下的程序

.. :表示上级路径

方便进行路径的回退

再退一级就到了 “ / ” ,也就是根目录,root目录

ls /:

看的是根目录里的内容

ls -ld xx:

只看目录,并没有进入目录

ls 路径:

访问这个文件

绝对路径:/ root / test / file.txt

相对路径:

从当前目录继续访问. / xxx

从当前目录的上级目录继续访问 .. / xxx

ls *:

显示所有文件

ls xxx*yyy:

显示以xxx开头yyy结尾的所有文件

cd指令

cd xxx (change directory)

进入指定的“文件夹”,进行路径切换

使用pwd可以看出是否进入

cd -:

跳转到最近一次所处的路径下,可以在两个经常访问的目录之间快速跳转

cd ~:

进入用户家目录,用户就是whoami指令输出的人

对于root账号,默认的家目录就是/root,root账号也叫做超级管理员账号

对于普通用户,默认家目录就是/home/xxx,其中xxx就是新建的用户名

任何一个用户首次登录所处的路径都是自己的家目录

clear指令

清屏操作

touch指令

touch xxx:

在当前目录下,创建一个新的普通文件,不是文件夹

mkdir指令

mkdir xxx:

当前路径下创建一个新的“文件夹”,默认创建一个空目录

mkdir -p a/b/c:

创建一个文件夹a里有b里有c

rmdir xx

删除一个空目录,删不了可执行程序,比如.out .txt

rm xx

删除文件,但是不能删一个目录

root账号下会询问你是否真的要删除,y(yes),n(no)

普通用户不会询问

rm删除了是几乎找不回来的

rm -f xx:强制删除,不会询问

rm -f * :删除所有文件

rm -r xx:

删除一个目录,类似于递归删除,删掉目录低下的全部文件,即使是空目录

rm -rf xx:

强制删除一个目录

如果要删根目录,类似于格式化C盘,那么操作系统就挂掉了

tree 目录

以树状形式显示目录结构

(root账户)使用这个命令安装tree

普通用户前要加sudo

whoami指令

查看当前正在使用Linux系统的用户

which (一个命令的名称)指令

显示这个可执行程序所在的路径在哪,要求系统打印出我所指定的指令名称在系统的所在路径

alias 别名=‘原本指令’

给指令起别名

ls命令本身被重命名时,要求带颜色

如果以绝对路径的形式执行的话,就没有颜色,因为没有被重定义

stat xxx

显示文件的属性

任何文件都有三种时间access、modify、change。称为一个文件的ACM时间

man指令

用法:man 指令

可以查看指令的用法,按Q键退出

man手册:

如果不指定手册,则从上往下依次查找,找到一个就停止

用法:man num 指令

1、(默认)查可执行程序、指令的用法

2、系统调用。最重要的是查2号手册

3、库调用。C库函数

安装后就可使用

cp指令

拷贝,都可以携带绝对、相对路径进行拷贝

cp 源头 目标:目标如果是目录,则源头文件直接拷贝到这个目录下了

cp 源头 目标 / 重命名:目标如果是带路径的文件名(也就是目录 / 文件名),则拷贝到指定目录,顺便进行重命名

cp -rf 源头 目标:拷贝目录

mv指令

移动文件,或者将文件重命名

mv 目录(文件) 重命名:在指定的目录下对文件或目录重命名

mv 目录(文件) 目标地址:挪动在当前地址所在的目录,到新地址

mv 目录(文件) 目标地址 /重命名:移动,并重命名

nano 源文件

使用记事本在文件里写:写完之后,Ctrl x(退出) -> y(yes)->回车

编译代码:gcc code.c

运行:./a.out

cat指令

cat:不跟文件的情况下,把键盘当中输入的内容直接输出出来

cat xxx.txt:打印文本文件的内容

cat < xxx.txt:输入重定向,不从键盘读,从后面的文件里读

cat -n 文件:打印的时候带上行数

cat -s 文件:不打印空行

tac 文件:倒着打印

echo指令

echo “xxx”:在屏幕上输出xxx,向显示器文件写入

echo “xxx” > xxx.txt:创建文件xxx.txt,并且把本来该写入显示器文件(在屏幕显示)的数据,写到到新的文件中

>xxx.txt:

1、创建文件,文件内容为空

2、清空文件

重定向:

> 为输出重定向:改变写入的方向,即重定向。每次进行重定向,都会从文件开始写入文件内容。也就是先清空,后写入(C语言里的w写方式打开文件)

>>为追加重定向:每次从上次文件结尾写入内容(C语言里的a追加方式打开文件)每运行一次,保留上次记录,内容不断新增

<为输入重定向

more指令

more xxx:在打开大文件时使用打满一屏幕输出就停下,让用户按回车下翻,Q退出

                   不能按上下键,不够灵活方便,不推荐

/xxx:在文档里搜索xxx内容

less指令

less xxx:可以实现和more一样的功能,而且可以按上下键,搜索内容时,还可以高亮显示,Q退出,推荐使用

在查日志的时候可以逐行显示

head指令

head xxx:默认显示文件的前10行

head -num xxx:显示文件的前num行

tail指令

tail xxx:默认显示文件后10行

tail -num xxx:显示文件后num行

取中间:head 前一部分,head -num xxx > tmp.txt,然后tail -num tmp.txt

缺点就是要创建临时文件

 可以head -num xxx | tail -num | less

|:

管道,可用来提取数据。可对多条指令级联

wc指令

wc -l xxx:统计文本的行数

date显示

% H : 小时 (00..23)
% M : 分钟 (00..59)
% S : (00..61)
% X : 相当于 %H:%M:%S
%d : (01..31)
%m : 月份 (01..12)
% Y : 完整年份 (0000..9999)
% F : 相当于 %Y-%m-%d

date + %Y-%m-%d_%H:%M:%S:2024-10-14_20:53:04

date +%s:时间戳,从1970年1月1日午夜12点(格林威治时间)到现在的秒数

date + %Y-%m-%d_%H:%M:%S -d@时间戳:可以将时间戳转换格式

cal指令

cal:打印今天所在月的日历

cal 2004:打印2004年的日历

cal -3:打印今天所在月、以及上个月、下个月日历

find指令

find 路径 -name xxx:以绝对路径的形式显示出查找的结果,是真正的在系统文件里查找的,深度优先遍历数

xxx可以为*.cpp

grep指令

行文本过滤工具

grep  “xxx” 文件:读取文件里包含xxx的行所在的信息

grep  -n “xxx” 文件:显示行号

grep  -v “xxx” 文件:不包含xxx的信息

grep  -i “xxx” 文件:忽略大小写匹配

zip指令

zip xxx.zip 目录名:只压缩了空的目录名

zip -r xxx.zip 目录名(文件):递归式的压缩。目录名可以写多个

unzip xxx.zip:解压压缩包

unzip xxx.zip -d yyy:解压xxx压缩包到yyy路径下

tar命令

tar -czf xxx.tgz yyy:打包并压缩yyy(可有多个文件或一个目录),到压缩包xxx.tgz

        c:创建新的压缩包

        z:打包时,进行压缩

        f:压缩包文件名,后紧跟文件名

        v:显示过程

tar -xzf xxx.tgz:解压

        x:解压

tar -xzf xxx.tgz -C yyy:解压到yyy路径下

        C:解压到yyy路径下

sz xxx.tgz:把压缩包传送到Windows桌面上

基于xshell进行 压缩包的Windows和Linux进行互传

scp 文件.tgz 身份(用户名)@另一台机器的IP:要拷贝的路径:跨Linux服务器拷贝

bc指令

Linux上的计算器

单独输入就进入计算器模式

uname指令

uname -r:

3.10.0-1160.119.1:当前操作系统所选择的内核版本

el7:centos 7 

x86_64:64位机器

centos的版本号:

CPU的信息:

内存的信息:

关机指令

shutdown -h:虚拟机关机

halt:关机

reboat:重启

但是云服务器严禁关机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值