Linux概述及基础命令

一.基础网络设置与远程访问

1.网络

NAT(网络地址交换)模式:满足虚拟机的基本上网要求,虚拟机可以上网但是真实电脑无法访问到

桥接模式:把虚拟机当做真实网络中的一台计算机

内部网络:虚拟机和真实计算机相互之间无法访问,虚拟机之间可以互相访问

仅主机:主机可以访问虚拟机,虚拟机不能访问主机

网卡1:NAT 网卡2:仅主机

virtualbox虚拟机网络设置

2.远程访问

rocky地址:192.168.176.152

用自己的计算机ping一下,可以ping通

systemctl set-default:默认设置 graphical target图形化界面/muti-user target终端页面

sudo systemctl set-default multi-user.target 开机进入终端页面

下载Xshell,连接Rocky,减少虚拟机对系统资源的耗用

二.开关机

1.开机

ctrl+alt+] 退到Xshell

命令提示符:[root@localhost ~]$

登录用户@(分隔符)本地登录 当前所处的位置 #当前为root $普通用户

~:当前用户在它的家目录里

exit:退出临时命令

su 切换用户

2.重启

reboot:重启linux,要求必须有超级管理员的权限

shutdown -h now:关机命令,也要有管理员权限

三.linux常用命令

1.文件操作命令

命令格式:Command [options] [arguments]

$rm -r(--recursive的简写) dir

命令 短选项 参数(操作对象)

文件操作命令:

①ls(list):列出参数的属性信息

ls:列出当前路径下的文件名 -l:详细列出当前位置下的文件 -al:列出所有文件(包含隐藏文件)

.表示当前目录 ..表示上一级目录

ll:ls -l的简写

②cd(change directory):切换目录

cd 参数 比如:cd ./Public切换到以当前目录为相对路径的Public目录中

cd .. 切换工作路径到上一级目录

cd /etc/yum 切换到绝对路径/etc/yum目录中

cd ~ 切换到家目录(home里的)

cd -回到上一层

pwd 查看当前目录

linux只有一个根目录,下面有许多子目录,没有盘符

如何区分文件和目录:以-开头的即为文件,d开头的为目录,l开头的是快捷方式

③touch命令:创建新文件,更新文件

touch 123.c

④mkdir:创建目录(即文件夹)

mkdir 123

mkdir [选项] 参数 -p:创造路径 -v:显示创建的过程

⑤rm:删除目录中的文件或目录

rm -r:递归删除

⑥cp:copy

cp [选项] 源文件 目标目录

cp -R ./public ./桌面

cp -Rp ./public ./桌面 拷贝时所有者等信息不改变

⑦mv:move(剪切)

mv 源文件或目录 目标目录

mv ./111.java ./public/112.java 移动且重命名(权限)

重命名文件:mv 111.java 113.java cp ./112.java ./test/114.java拷贝且重命名

⑧rmdir:删除空目录

rmdir -p ./temp/123/456 实际中用rm即可

⑨查看文件命令

cat:正向输出文件内容

tac:逆向输出文件内容(最后一行在前)

more:分页输出,一行一行滚动

head:head -n(显示前n行) 文件名

tail:tail -n(显示后n行) 文件名

2.文件权限管理命令

windows中扩展名决定文件类型, .com/.exe/.bat统称为可执行文件

linux中:扩展名来识别文件类型(给用户看)

如:- rw- rw- r-- 普通文件 可读可写不可执行(拥有者的权限) 可读可写不可执行(所在组的权限) 可读不可写不可执行(其他人);

d rwx rwx r-x 目录

①chmod

修改权限 chmod {augo} (all user group other) {+-=} 文件或目录 chomd a+r 123.c

②chown

把文件拥有者进行修改 chown root(用户) file(文件或目录)

③chgrp

变更文件所在工作组 chgrp root itheima

3.文件搜索查找命令

①which+检索内容

只能检索内置命令,不能检索普通文件

②find

检索整个硬盘,根据名称、时间、大小等检索 find -name 111.java

③locate

locate +文件 如:locate 111.java,新创建的文件无法检索到

updatedb:手动更新数据库,即可找到新创建的文件

④grep

grep itheima /etc/passwd 字符串 位置

查找文件:管道命令 ls -l | grep 字符串

4.linux网络与通信

①ifconfig:查看ip地址
②配置动态ip地址

vim ifcfg-enp0s3:修改

动态获取ip方法:修改bootproto=dhcp,onboot=yes

修改后重启一下网络服务即可systemctl restart network

③配置静态ip地址

bootproto=static onboot=yes

在最后加上几行,IP地址、子网掩码、网关、dns服务器

重启网络服务

④netstat

列出网络系统的状态信息

netstat 选项

⑤ping

ping测试连通性

ping 选项 参数

⑥write/wall

write:向另一个用户发信息 write 用户 hello

wall:向所有用户发信息 wall 信息

如果需要发中文,则需要配置系统语言

5.压缩与解压缩

①zip

zip 112.java.gz ./112.java 把112.java文件压缩为112.java.gz

zip -r test.gz ./test 将test文件夹压缩为test.gz

gzip 会把原文件删掉

bzip2 同时压缩许多文件

②unzip

unzip 需要解压的压缩文件名

gunzip 用gzip压缩的就要用gunzip进行解压

bunzip2 -k 解压时保留原文件

③tar

打包命令 tar -czvf test2.tar.gz ./test(对test目录进行打包)

-c打包 -v打包时有信息提示 -f打包时重命名 -z进行gzip的压缩 -czvf

-x解包 -xzvf

6.帮助命令

①man

解释命令 如:man zip

②info

解释命令 如:info zip

--help 查看参数信息等

③whatis

也是解释命令:简洁解释

④whoami

查阅当前用户身份

四.Vi编辑器的使用方法

1.命令模式

对文档内容进行编辑操作,光标的移动

2.插入模式

vim 112.java切换掉插入模式 按i进行插入操作

按esc回到命令模式

命令详见课本p42

此模式下可以编程

3.底行模式

按shift+:

q退出 wq写入后退出 w!强制退出

:set nu设置行号

:n 光标移动到第n行

:/xx 在文档中查找,n查找下一个,N查找上一个

vimrc,永久设置

五.GCC与GDB

1.GCC

yum -y install gcc 安装gcc,c语言编译

安装上之后:

①预处理:清理无关文件 gcc -E

②编译:高级语言代码编译成二进制代码 gcc -S

③汇编:变为汇编语言 gcc -o

④链接过程:文件连接起来

单文件编译:$ gcc hello.c 换名称-o,后面加上名称

多文件编译:$ gcc _hello.c_add.c -o _main

先编译gcc 111.c -o 111.exe 再执行 ./111.exe(若没有-o,默认生成a.out文件)

2.GDB

GDB调试工具,可以逐行执行

①在代码中加入调试信息,并调试程序

$ gcc gdbtest.c -o app -g

(gdb) gdb.app

②列出程序代码,并设置断点

list 行号

b 行号

b 22 if i=5 在22行设定带条件的断点

info b 查看断点

disable Num 取消断点

相关推荐
数智化管理手记2 小时前
精益生产中的TPM管理是什么?一文破解设备零故障的密码
服务器·网络·数据库·低代码·制造·源代码管理·精益工程
Vect__3 小时前
深刻理解进程、线程、程序
linux
w6100104663 小时前
CKAD-2026-Ingress
运维·k8s·ckad
@insist1234 小时前
网络工程师-生成树协议(STP/RSTP/MSTP)核心原理与应用
服务器·开发语言·网络工程师·软考·软件水平考试
末日汐4 小时前
传输层协议UDP
linux·网络·udp
zzzsde7 小时前
【Linux】库的制作和使用(3)ELF&&动态链接
linux·运维·服务器
CQU_JIAKE7 小时前
4.3【A]
linux·运维·服务器
AI周红伟7 小时前
OpenClaw是什么?OpenClaw能做什么?OpenClaw详细介绍及保姆级部署教程-周红伟
大数据·运维·服务器·人工智能·微信·openclaw
Elastic 中国社区官方博客7 小时前
当 TSDS 遇到 ILM:设计不会拒绝延迟数据的时间序列数据流
大数据·运维·数据库·elasticsearch·搜索引擎·logstash
qing222222227 小时前
Linux中修改mysql数据表
linux·运维·mysql