Linux系统命令&常用操作

24 篇文章 0 订阅
9 篇文章 0 订阅

Linux基础命令


Linux的目录结构


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

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

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

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

ls命令


功能:列出文件夹信息

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

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

  • -l,以列表形式查看

  • -h,配合-l,以更加人性化的方式显示文件大小

  • -a,显示隐藏文件

#查看指定目录下文件个数
ls -l /home | grep "^_" | wc -l

隐藏文件、文件夹

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

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

pwd命令


功能:展示当前工作目录

语法:pwd

cd命令


功能:切换工作目录

语法:cd [目标目录]

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

HOME目录


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

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

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

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

相对路径、绝对路径


  • 相对路径,==非==/开头的称之为相对路径

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

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

绝对路径从根开始描述路径

  • 查看文件绝对路径

realpath 文件名

特殊路径符


  • .,表示当前,比如./a.txt,表示当前文件夹内的a.txt文件

  • ..,表示上级目录,比如../表示上级目录,../../表示上级的上级目录

  • ~,表示用户的HOME目录,比如cd ~,即可切回用户HOME目录

mkdir命令


功能:创建文件夹

语法:mkdir [-p] 参数

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

  • 选项:-p,可选,表示创建前置路径

touch命令


功能:创建文件

语法:touch 参数

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

cat命令


功能:查看文件内容

语法:cat 参数

  • 参数:被查看的文件路径

more命令


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

语法:more 参数

  • 参数:被查看的文件路径

  • 在查看过程中:

  • 空格键翻页

  • q退出查看

cp命令


功能:复制文件、文件夹

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

  • 参数1,被复制的

  • 参数2,要复制去的地方

  • 选项:-r,可选,复制文件夹使用

示例:

  • 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:被移动的

  • 参数2:要移动去的地方,参数2如果不存在,则会进行改名

rm命令


功能:删除文件、文件夹

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

  • 参数:支持多个,每一个表示被删除的,空格进行分隔

  • 选项:-r,删除文件夹使用

  • 选项:-f,强制删除,不会给出确认提示,一般root用户会用到

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

which命令


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

语法:which 参数

  • 参数:被查看的命令

find命令


功能:搜索文件

语法1按文件名搜索:find 路径 -name 参数

  • 路径,搜索的起始路径

  • 参数,搜索的关键字,支持通配符, 比如:``test表示搜索任意以test结尾的文件

grep命令


功能:过滤关键字

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

  • 选项-n,可选,表示在结果中显示匹配的行的行号。

  • 参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用””将关键字包围起来

  • 参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

参数文件路径,可以作为管道符的输入

ufw命令


功能:防火墙管理

语法:ufw 指令

指令选项:

  • status: 查看防火墙状态

  • enable: 开启防火墙

  • disable: 关闭防火墙

  • allow 22: 允许外部访问22端口

  • deny 22: 拒绝外部访问22端口

wc命令


功能:统计

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

  • 选项,-c,统计bytes数量

  • 选项,-m,统计字符数量

  • 选项,-l,统计行数

  • 选项,-w,统计单词数量

  • 参数,文件路径,被统计的文件,可作为内容输入端口

参数文件路径,可作为管道符的输入

管道符|


写法:|

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

示例:

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

可以支持嵌套:

cat a.txt | grep itheima | grep itcast

echo命令


功能:输出内容

语法:echo 参数

  • 参数:被输出的内容

`反引号


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

示例:

  • echo `pwd`,会输出当前工作目录

tail命令


功能:查看文件尾部内容

语法:tail [-f] 参数

  • 参数:被查看的文件

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

head命令


功能:查看文件头部内容

语法:head [-n] 参数

  • 参数:被查看的文件

  • 选项:-n,查看的行数

重定向符


功能:将符号左边的结果,输出到右边指定的文件中去

  • >,表示覆盖输出

  • >>,表示追加输出

vi编辑器


命令模式快捷键

底线命令快捷键

命令的选项


我们学习的一系列Linux命令,它们所拥有的选项都是非常多的。

比如,简单的ls命令就有:-a -A -b -c -C -d -D -f -F -g -G -h -H -i -I -k -l -L -m -n -N -o -p -q -Q -r-R -s -S -t -T -u -U -v -w -x -X -1等选项,可以发现选项是极其多的。

查看命令的帮助

可以通过:命令 --help查看命令的帮助手册

查看命令的详细手册

可以通过:man 命令查看某命令的详细手册

Linux常用操作


软件安装


  • CentOS系统使用:

  • yum [install remove search] [-y] 软件名称

  • install 安装

  • remove 卸载

  • search 搜索

  • -y,自动确认

  • Ubuntu系统使用

  • apt [install remove search] [-y] 软件名称

  • install 安装

  • remove 卸载

  • search 搜索

  • -y,自动确认

yum 和 apt 均需要root权限

systemctl


功能:控制系统服务的启动关闭等

语法:systemctl start | stop | restart | disable | enable | status 服务名

  • start,启动

  • stop,停止

  • status,查看状态

  • disable,关闭开机自启

  • enable,开启开机自启

  • restart,重启

软链接


功能:创建文件、文件夹软链接(快捷方式)

语法:ln -s 参数1 参数2

  • 参数1:被链接的

  • 参数2:要链接去的地方(快捷方式的名称和存放位置)

日期


语法:date [-d] [+格式化字符串]

  • -d 按照给定的字符串显示日期,一般用于日期计算

  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式

  • %Y 年%y 年份后两位数字 (00..99)

  • %m 月份 (01..12)

  • %d 日 (01..31)

  • %H 小时 (00..23)

  • %M 分钟 (00..59)

  • %S 秒 (00..60)

  • %s 自 1970-01-01 00:00:00 UTC 到现在的秒数

示例:

  • 按照2022-01-01的格式显示日期

  • 按照2022-01-01 10:00:00的格式显示日期

  • -d选项日期计算

  • 支持的时间标记为:

时区


修改时区为中国时区

ntp


功能:同步时间

安装:yum install -y ntp

启动管理:systemctl start | stop | restart | status | disable | enable ntpd

手动校准时间:ntpdate -u ntp.aliyun.com

ip地址


格式:a.b.c.d

  • abcd为0~255的数字

特殊IP:

  • 127.0.0.1,表示本机

  • 0.0.0.0

  • 可以表示本机

  • 也可以表示任意IP(看使用场景)

查看ip:ifconfig

主机名


功能:Linux系统的名称

查看:hostname

设置:hostnamectl set-hostname 主机名

配置VMware固定IP


  1. 修改VMware网络,参阅PPT,图太多

  1. 设置Linux内部固定IP

修改文件:/etc/sysconfig/network-scripts/ifcfg-ens33

示例文件内容:

TYPE="Ethernet"

PROXY_METHOD="none"

BROWSER_ONLY="no"

BOOTPROTO="static" # 改为static,固定IP

DEFROUTE="yes"

IPV4_FAILURE_FATAL="no"

IPV6INIT="yes"

IPV6_AUTOCONF="yes"

IPV6_DEFROUTE="yes"

IPV6_FAILURE_FATAL="no"

IPV6_ADDR_GEN_MODE="stable-privacy"

NAME="ens33"

UUID="1b0011cb-0d2e-4eaa-8a11-af7d50ebc876"

DEVICE="ens33"

ONBOOT="yes"

IPADDR="192.168.88.131" # IP地址,自己设置,要匹配网络范围

NETMASK="255.255.255.0" # 子网掩码,固定写法255.255.255.0

GATEWAY="192.168.88.2" # 网关,要和VMware中配置的一致

DNS1="192.168.88.2" # DNS1服务器,和网关一致即可

ps命令


功能:查看进程信息

语法:ps -ef,查看全部进程信息,可以搭配grep做过滤:ps -ef | grep xxx

kill命令


nmap命令


netstat命令


功能:查看端口占用

用法:netstat -anp | grep xxx

#查看占用端口22的进程
netstat -ntulp | grep 22

ping命令


测试网络是否联通

语法:ping [-c num] 参数

wget命令


curl命令


lsof 命令


功能:查看进程打开的文件、目录;

查看进程监听的端口等 socket 相关信息。

语法:lsof 文件名 | lsof [选项] 参数

选项:

  • -i <条件> 输出符合条件与网络相关的文件

  • -c <进程名> 输出指定进程所打开的文件

  • -d <文件描述符> 列出占用该文件号的进程

  • +d <目录> 输出目录及目录下被打开的文件和目录(不递归)

  • -p <进程号> 输出指定 PID 的进程所打开的文件

常用举例:

# 显示开启文件abc.txt的进程
lsof abc.txt 
# 知道22端口现在运行什么程序
lsof -i :22 
# 显示nsd开头的进程打开的文件
lsof -c nsd 
# 显示目录下被进程开启的文件
lsof +d /usr/local/ 
# 用以显示符合条件的进程情况
lsof -i [i] 
# 列举pid=377进程打开的文件
lsof -p 377 

top命令


功能:查看主机运行状态

语法:top,查看基础信息

可用选项:

交互式模式中,可用快捷键:

df命令


查看磁盘占用

free 命令


显示系统已用及空余物理内存量、交换分区使用情况、内核占用的缓存、及共享内存。

语法:free [-h] [-m]

  • -m, –mega, 以MB为单位显示内容使用情况

  • -h, –human, 自动将数值转换为人类易读形式

iostat命令


查看CPU、磁盘的相关信息

vmstat

是Linux中监控内存的常用工具,可对操作系统的虚拟内存、进程、CPU等的整体情况进行监视。

语法:vmstat [options] [delay [count]]

  • delay:刷新时间间隔。如果不指定,只显示一条结果。

  • count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。

  • -d:显示磁盘相关统计信息。

  • -p:显示指定磁盘分区统计信息

  • -S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)

  • -V:显示vmstat版本信息。

sar命令


查看网络统计

环境变量


  • 临时设置:export 变量名=变量值

  • 永久设置:

  • 针对用户,设置用户HOME目录内:.bashrc文件

  • 针对全局,设置/etc/profile

PATH变量

记录了执行程序的搜索路径

可以将自定义路径加入PATH内,实现自定义命令在任意地方均可执行的效果

$符号


可以取出指定的环境变量的值

语法:$变量名

示例:

echo $PATH,输出PATH环境变量的值

echo ${PATH}ABC,输出PATH环境变量的值以及ABC

如果变量名和其它内容混淆在一起,可以使用${}

压缩解压


压缩

tar -zcvf 压缩包 被压缩1...被压缩2...被压缩N

  • -z表示使用gzip,可以不写

zip [-r] 参数1 参数2 参数N

解压

tar -zxvf 被解压的文件 -C 要解压去的地方

  • -z表示使用gzip,可以省略

  • -C,可以省略,指定要解压去的地方,不写解压到当前目录

unzip [-d] 参数

su命令


切换用户

语法:su [-] [用户]

sudo命令


比如:

itheima ALL=(ALL) NOPASSWD: ALL

在visudo内配置如上内容,可以让itheima用户,无需密码直接使用sudo

chmod命令


修改文件、文件夹权限

语法:chmod [-R] 权限 参数

  • 权限,要设置的权限,比如755,表示:rwxr-xr-x

  • 参数,被修改的文件、文件夹

  • 选项-R,设置文件夹和其内部全部内容一样生效

chown命令


修改文件、文件夹所属用户、组

语法:chown [-R] [用户][:][用户组] 文件或文件夹

用户组管理


用户管理


genenv命令


  • getenv group,查看系统全部的用户组

  • getenv passwd,查看系统全部的用户

env命令


查看系统全部的环境变量

语法:env

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值