随笔 - 5  文章 - 0  评论 - 0  阅读 - 40

linux

Linux命令基础格式

command [-options] [parameter]

command:命令本身
options:[可选的、非必填的]命令的一些选项,可以通过选项控制命令的一些行为细节
parameter:[可选的、非必填的]命令的参数,多用于命令的指向目标等
语法中的[]表示可选、非必填的意思

命令集

ls命令

ls[-a -l -h][Linux路径]
-a -l -h 是可选项;-a表示all,即列出全部文件,包括隐藏文件/文件夹(.开头的文件/文件夹);-l表示以列表的形式展示内容,并展示更多信息;-h表示以易于阅读的形式列出文件大小,必须与-l同时使用
Linux 路径是此命令可选的参数
当不使用选项和参数的时候,表示直接将结果以平铺的形式,列出当前工作目录下的内容(文档、文件夹、软件等;选项是可以组合使用的,例如-lh -al -ah 前后顺序无影响

cd切换目录命令

cd [路径]
cd命令只需选项,无需参数,表示要切换到那个目录下
cd命令只写命令,不写参数,表示回到用户的HOME目录下

pwd查看当前工作目录

pwd命令无需参数,无需选项,直接输入pwd,打印当前工作目录

mkdir命令

mkdir[-p][linux路径]
参数必填,表示创建的目录(文件夹)的位置,绝对路径和相对路径均可
-p可选项,表示自动创建不存在的父目录,适用于创建连续多层级的目录

touch创建文件

touch [路径]
touch命令无选项,路径必填,表示要创建的文件的路径,相对、绝对、符号,均可使用

cat查看文件

cat [路径]
cat命令无选项,路径必填,表示要查看的文件的路径,相对、绝对、符号,均可使用

more查看

more与cat不同的是,cat是直接将所有的内容全部打印出来,more如果文件内容过多可以翻页查看(空格翻页,q退出)

cp命令复制文件(夹)

cp[-r][参数一][参数二]
-r,可选,复制文件夹使用,表示递归
参数一:Linux路径,表示要复制的文件
参数二:Linux路径,表示要复制到的位置

mv移动文件

mv[参数一][参数二]
参数一:linux路径,被移动的文件
参数二:linux路径,移动的目标位置,若不存在则将被移动文件的文件名改为参数二的内容

rm

rm[-r -f][参数一 参数二 参数三.....参数N]
同cp命令一样-r表示删除文件夹
-f表示force,强制删除文件夹,不会弹出提示确认信息
参数一...表示要删除的文件或文件夹路径,空格隔开

which命令

通过which命令查找所用命令的程序文件存放在哪里
which [查找的命令]

find命令-按照文件名查找文件

find[起始路径]-name["文件名"]
find[起始路径]-size +|- n[kMG(文件大小)]
+-表示大于和小于
n表示数字
kMG表示单位,kB(k小写)、MB、GB
小结:which和find的区别

  • which:主要用于查找命令的路径,适用于快速定位可执行文件,查找范围限于 PATH 环境变量中的目录。
  • find:功能更强大,可以查找任意类型的文件,并支持多种查找条件,适用于更复杂的文件查找需求
grep

grep[-n]关键字 文件路径
-n 可选 表示在结果中显示匹配的行的行号
关键字 必填 表示过滤的关键字,带有空格或其他特殊符号时,建议用""将关键字包围起来
文件路径 表示要过滤的文件路径,可作为管道符内容输入端口

wc做数量统计

可以通过wc命令统计文件的行数、单词数量等
wc[-c -m -l -w]文件路径
-c 统计字节bytes数量
-m 统计字符数量
-l 统计行数
-w 统计单词数量
文件路径 被统计的文件,可作为管道符内容输入端口

管道符|

将左边命令的结果作为右边命令的输入

echo输出

echo[输出内容]

重定向符">"、">>"

">"将左侧命令覆盖写入到右侧指定文件中
">>"将左侧命令追加写入到右侧指定文件中

tail

可以查看文件尾部内容,并可以持续跟踪
tail[-f -num]linux路径
-f 持续跟踪
-num 启动时查看文件多少行,默认10行
linux路径,表示被查看的文件

vi/vim编辑器

三种模式
  • 命令模式:命令模式下所敲得按键都理解为命令,以命令驱动不同的功能。此命令下不能进行自由文字编辑模式
  • 输入模式:也就是所谓的编辑模式、插入模式,可以对文件内容进行自由编辑
  • 底线命令模式:以“:”开始,通常用于文件的保持、退出
命令模式

如果需要通过vi/vim编辑器编辑文件,请通过如下命令:vi(m) 文件路径
vim兼容全部的vi功能,后续全部使用vim命令

  • 如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
  • 如果文件路径表示的文件存在,那么此命令用于编辑已有文件

在命令模式内,按i进入输入模式;在输入模式内按esc会进入命令模式;在命令模式内按:进入底线命令模式;在底线命令模式输入wq保存文件并退出vim编辑器

linux用户

为普通用户配置sudo认证
  1. 切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers
  2. 在文件的最后添加:ithema ALL = (ALL) NOPASSWD: ALL
    • 其中NOPASSWD:ALL表示使用sudo命令,无需输入密码
  3. 最后通过wq保存
  4. 切回普通用户
  5. 执行的命令均以root运行
用户组管理

以下命令需root用户执行


  • 创建用户组
    groupadd
  • 删除用户组
    groupdel
  • 创建用户
    useradd[-g -d]用户名
    • -g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已存在,如已存在同名组,必须使用-g
    • -d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名
  • 删除用户
    userdel[-r]用户名
    • -r删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留
  • 查看用户所属组
    id[用户名]
    • 参数:用户名,被查看的用户,如果不提供则查看自身
  • 修改用户所属组
    usermod-aG[用户组][用户名],将指定用户加入指定用户组

getent

使用getent,可以查看当前系统中有那些用户及用户组
getent passwd(用户)
用户名:密码:用户ID:组ID:描述信息:HOME目录:执行终端(默认bash)
getent group(用户组)
组名称:组认证(显示为X):组ID

权限信息

[-/d/l][r/-][w/-][x/-][r/-][w/-][x/-][r/-][w/-][x/-]
1:-表示文件,d表示文件夹,l表示软链接
2、3、4:所属用户的权限
5、6、7:所属用户组的权限
8、9、10:其他用户的权限

  • r表示读权限
  • w表示写权限
  • x表示执行权限
chmod

注意,只有文件、文件夹的所属用户或root用户可以修改

修改权限

chmod[-R]权限 文件或文件夹
-R 对文件夹内的全部内容应用同样的操作
例如:chmod u=rwx,g=rx,o=x hello.txt 将文件权限修改为:rwxr-x--x
- 其中:u表示user所属用户权限,g表示group组权限,o表示other其他用户权限
普通用户无法修改所属其他用户或组,所以此命令只适用于root用户执行

修改所属

chmod [-R] [用户][:用户组] 文件或文件夹

快捷键
  • 强制停止
    • ctrl+c //可以停止程序运行,也可以退出当前命令的输入
  • 退出或登出
    • ctrl+d //可以退出账号的登录,也可以退出某些特定程序的专属页面(例如:python的编程语言的相关界面),但不能退出vi/vim
  • 历史命令搜索
    • history//可以通过!命令前缀,自动匹配上次执行匹配前缀的命令
    • ctrl+r//输入内容去匹配历史命令
      • 如果得到的命令是需要的。可以回车直接执行;也可以键盘左右键,得到此命令不执行
  • 光标移动快捷键
    • ctrl+a,跳到命令开头
    • ctrl+e,跳到命令结尾
    • ctrl+键盘左键,向左跳一个单词
    • ctrl+键盘右键,向右跳一个单词
yum命令

yum:RPM包软件管理器,用于自动化安装Linux软件,并可以自动解决依赖问题
yum [-y][install|remove|search] 软件名称
选项:-y,自动确认,无需手动确认安装或卸载过程
install:安装
remove:卸载
search:搜索
yum命令需要root权限,可以使用su -切换到root,或使用sudo提升权限
yum命令需要联网

systemctl命令

systemctl [start|stop|status|enable|disable] 服务名

  • start 启动
  • stop 关闭
  • status 查看状态
  • enable 开启开机自启
  • disable 关闭开机自启
    Linux系统很多软件支持使用systemctl命令控制:启动、停止、开机自启,能够被systemctl管理的软件,也被称为:服务
    系统内置的服务比较多,比如
  • NetworkManager,主网络服务
  • network,副网络服务
  • firewalld,防火墙服务
  • sshd,ssh服务(finalshell远程登录Linux就是使用的这个服务)
ln命令 创建软链接(类似于windows中的快捷方式)

ln [-s][参数一]~[参数二]

  • -s选项,创建软链接
  • 参数一:被链接的文件或文件夹
  • 参数二:要链接去的目的地
date命令

通过date命令可以在命令行中查看系统的时间
date [-d][+格式化字符串]

  • -d按照给定的字符串显示日期,一般用于日期计算
  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式
    • %Y 年
    • %y 年份后两位数字(00->99)
    • %m 月份(01->12)
    • %d 日(01->31)
    • %H 小时(00->23)
    • %M 分钟(00->59)
    • %S 秒(00->59)
    • %s自 1970-01-01 00:00:00UTC——>到现在的秒数
ntp程序(服务) 自动校准系统时间

安装:ntp:yum -y intsall ntp
设置开机自启:

  • systemctl start ntpd
  • 手动校准(需root权限):ntpdate -u ntp.aliyun.com
linux查看修改主机名

hostname查看主机名
hostnamectl set-hostname [主机名],修改主机名,需要root权限

ping命令

可以通过ping命令,检查指定的网络服务器是否是可联通状态
ping [-c num] ip或主机名

  • 选项:-c,检查的次数,不使用-c选项,将无限次持续检查
  • 参数:ip或主机名,被检查的服务器的ip地址或主机名地址
wget命令

wget是非交互式的文件下载器,可以在命令行内下载文件
wget [-b] url

  • 选项:-b,可选,后台下载,会将日志写到当前工作目录的wget-log文件中
  • 参数:url,下载链接
curl命令

curl可以发送http网络请求,可用于:下载文件、获取信息等
curl [-O] url

  • 选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件
  • 参数:url,发起请求的网络地址
查看端口占用
  • 使用nmap命令,安装nmap:yum -y install nmap
    nmap 被查看的IP地址

  • 可以通过netstat命令,查看指定端口的占用情况
    netstat -anp|grep 端口号,安装netstat:yum -y install net-tools
查看进程
  • ps命令:ps [-e -f]
    选项:-e,显示出全部的进程
    选项:-f,以完全格式化的形式展示信息(展示全部信息)
    一般来说,固定用法就是:ps -ef 列出全部进程的全部信息
    从左到右分别是
  • UID:进程所属的用户ID
  • PID:进程的进程号ID
  • PPID:进程的父ID(启动此进程的其他进程)
  • C:此进程的CPU占用率(百分比)
  • TTY:启动此进程的终端序号,如显示?,表示非终端启动
  • TIME进程占用CPU的时间
  • CMD:表示进程对应的名称或启动路径或启动命令

查看指定进程,与管道符配合使用,ps -ef|grep tail,即可查看指定进程

关闭进程

kil [-9][进程ID]
选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制

查看系统资源占用

可以通过top命令查看CPU、内存使用情况

默认每五秒刷新一次,直接输入top即可,按q或ctrl+c退出

磁盘信息监控
  • 使用df命令,可以查看硬盘的使用情况
    语法:df [-h]
    选项:-h,以更人性化的单位显示

  • 可以使用iostat查看CPU、磁盘的相关信息
    语法:iostat[x][num1][num2]
    选项:-x,显示更多信息
    num1:数字,刷新间隔
    num2:数字,刷新次数

网络状态监控
  • 可以使用sar命令查看网络的相关统计(sar命令非常复杂,这里仅用于简单的统计网络)
    语法:sar -n DEV num1 num2
    选项:-n,查看网络,DEV表示查看网络接口
    num1:刷新间隔(不写就查看一次结束),num2:查看次数(不填无限次数)
修改环境变量
  • 临时生效:export 名称=值
  • 永久生效:
    • 针对当前用户:~/bashrc文件中配置
    • 针对全部用户:~/etc/profile文件中配置
    • 配置完成,可以通过source命令立刻生效
rz、sz命令

需要通过yum-y install lrzsz进行安装

  • rz命令,进行上传,语法:输入rz,接着会弹出上传窗口

  • sz命令进行下载,语法:sz 要下载的文件

tar命令

语法:tar [-c -v -x -f -z -C]参数1 参数2 参数3 ..... 参数n

  • -c,创建压缩文件,用于压缩模式
  • -v,显示压缩、解压过程,用于查看进度
  • -x,解压模式
  • -f,要创建的文件,或要解压的文件,-f选项必须在所有选项中处于最后一个
  • -z,gzip模式,不使用-z就是普通的tarball格式,如果使用一般情况下位于选项位的第一个
  • -C,选择解压的目的地,用于解压模式
zip命令压缩文件

可以使用zip命令,压缩文件为zip压缩包
语法:zip [-r] 参数1 参数2...参数N

  • -r,被压缩的包含文件夹的时候,需要使用-r选项,和rm、cp等命令的-r效果一致
unzip命令解压文件

使用unzip命令,可以方便的解压zip压缩包
语法:unzip [-d] 参数

  • -d,指定要解压去的位置,同tar的-C选项
  • 参数,被解压的zip压缩包文件
posted on   侯广  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示