一、Linux终端基础操作
#命令帮助
man 命令名 q退出
help 命令名
1、目录:
Linux系统中没有C、D盘这样的磁盘目录,但是有"/"代表根目录,其他目录是在根目录之下的。
pwd 查看当前目录
cd 到指定目录下,cd ~ 返回到当前终端目录
ls -a \|-l\|-la\|R (ls -l = ll)
mkdir -p 建多层目录
rmdir -p 删多层目录
rm -r | -rf 删文件和目录
cp 原始文件 拷贝后路径
cp -r 源文件夹 目标文件夹/ 递归拷贝
mv 原始目录/原始名 目标目录/修改名
clear 清屏

2、文件:
touch 新建文件
vi|vim 编辑模式-i\|o\|a 命令模式esc 底行模式: 退出wq!\|x!\|q!
查找:/从光标位开始 替换:%s/被替换/替换内容/g 行号set nu
修改全局显示行号etc/virc的最后加:set nuset number\|nonumber
cat 小文件
head 文件头10行 -10 文件名
tail 文件尾10行 -10 文件名 -f 更新\|动态加载ctrl+c退出
more q | ctrl+c 退出
file 查看文件类型
find -name 默认当前目录下查找文件,也可以指定目录查找 find / -name ...

3、用户命令:
su - 用户 -表示使用该用户环境
whoami 当前用户信息
id 显示用户ID、组ID、所属组列表
groups 显示当前用户所属的所有组
groupadd 添加组,例:groupadd mysqlzu
groupdel 删除组,例: groupdel musqlzu (组内不能有用户)
useradd 创建用户并添加组,useradd mysql -g mysqlzu -p 123456
userdel 删除用户
usermod 修改用户属性
passwd root:passwd mysql 修改密码
4、权限命令:
d rwx r-x r-x:d 目录 rread wwrite xexecute
rwx111 r-x101 r--100
7 5 4
用户 用户组 其他组
chmod u\|g\|o+\|- r\|w\|x 文件
chmod -R ugo+rwx test.txt
chmod 777 -R 文件夹 -R递归授权
#将当前目录的拥有者改为指定的用户或组
chown -R mysql:mysqlzu ./
#注意改文件的所有者和目录的所有者问题,只有对目录有权限才能创建删除目录下文件
5、进程:
ps -ef|grep 进程关键词sshd (ps -ef | ps aux查所有)
#杀死进程
kill -9 pid | kill -15 pid
pkill -9 redis-server
pkill -u username 杀死用户进程
killall redis-cli
找命令位置
whereis 命令名
6、网络命令:
网卡查看:
ifconfig -a
ip addr
#启用禁用
ifconfig eth0 up
ifconfig eth0 down
#自动获取ip
dhclient eth0
service sshd start
挂载:
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom #必须开启cdrom连接而且cdrom中有iso
cd /mnt/cdrom
取消挂载:
umount /mnt/cdrom
7、查看系统架构:
uname -a 可以直接显示 Linux 系统架构命令,几乎可以工作在所有 Linux 系统当中;
arch 命令主要用于显示操作系统架构类型,与 uname -m 命令非常类似。如果输出 x86_64 则表示为 64 位系统,如果输出 i686 或 i386 则表示为 32 位系统;
8、查看目录的剩余空间:
df -hl 查看磁盘剩余空间
df -h 查看整台服务器的硬盘使用情况
du -sh 目录名 返回该目录的大小 du -sh \*
du -sm 文件夹 返回该文件夹总M数
9、查看当前时区::
timedatectl //上海(和北京一样东八区)
timedatectl list-timezones //查看系统支持的时区(没有北京)
timedatectl set-timezone Asia/Shanghai //设置上海
10、防火墙:
打开8080端口:添加规则
iptables -I|A INPUT -p tcp --dport 8080 -j ACCEPT
保存规则到文件:
service iptables save
查看规则
iptables -L INPUT --line-numbers
删除规则
iptables -D INPUT 1
启动关闭防火墙:
systemctl start firewalld | 6.5:service iptables start
systemctl stop firewalld | 6.5:service iptables stop
添加端口:
firewall-cmd --zone=public --add-port=80/tcp --permanent(永久)
#查看所有打开的端口:
firewall-cmd --zone=public --list-ports
#重新载入
firewall-cmd --reload
#查看
firewall-cmd --zone=public --query-port=80/tcp
#删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent
查看状态:
systemctl status firewalld 或者 firewall-cmd --state
#查看当前开了哪些服务:
firewall-cmd --list-services
#添加一个服务到firewalld:
firewall-cmd --add-service=http //http换成想要开放的service
#这样添加的service当前立刻生效,但系统下次启动就失效。
#要永久开发一个service,加上 --permanent:
firewall-cmd --permanent --add-service=http
查看端口命令:netstat -an :查看网络端口 netstat -anp\|grep svn
netstat -nltp | grep 80 查看80端口监听
11、关机重启:
shutdown
poweroff
init
0:停机或者关机(千万不能将initdefault设置为0)
1:单用户模式,只root用户进行维护
2:多用户模式,不能使用NFS(Net File System)
3:完全多用户模式(标准的运行级别)
4:安全模式
5:图形化(即图形界面)
6:重启(千万不要把initdefault设置为6)
reboot = shutdown -r now
halt
二、在Linux中安装软件

1、tar解压安装:
tar -zxvf tar.gz -C 目录 (大写C)
tar -jxvf *.bz
tar -xvf *.zip|*.tar
tar -Jxf *.tar.xz
rocky linux默认没有tar,要先安装:
dnf makecache
dnf install tar
unzip解压zip文件:
yum install -y unzip zip
unzip *.zip
2、rpm:二进制安装
rpm -qa|grep jdk #查看
rpm -ef Java-1.7.0-openjdk-1.7.0.... #卸载
rpm -ivh jdk-7u67-linux-x64.rpm #安装
安装到指定目录:
rpm -ivh --prefix=/usr/java xx.rpm
rpm -i --badreloc --relocate /usr/java=/home/java jdk.rpm
3、yum:在线安装
yum repolist all #查看开启的仓库
yum -config-manager --enable <仓库名> #启用仓库
yum list installed mysql* #查看
yum -y install mysql #安装
yum -y remove mysql #卸载
yum list mysql* #查看有没有安装包
#安装到指定目录
yum -c /etc/yum.conf --installroot=/usr/local --releasever=/ install nginx
#该命令解释如下:
-c /etc/yum.conf #表示指定yum配置文件地址
--installroot=/usr/local #表示指定自定义的安装目录
注意:不推荐使用yum安装软件时将软件安装到自定义目录,因为实际操作过程中发现如果安装到自定义目录,会额外安装很多依赖的软件包,即使这些依赖包已经安装过,也会在你自定义的目录中重新安装
三、在Linux中编写Python代码

四、在Linux中编写C++代码

五、Linux基础值环境变量
用户级别:vi .bash_profile
系统级别:vi /etc/profile
添加(注意所有大小写):
#jdk下载 https://dev.java/download/
export JAVA_HOME=/opt/jdk17
export PATH=JAVA_HOME/bin:PATH
export CLASSPATH=.:JAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar #可省略
保存退出后让其生效(不要写到环境变量配置里)
source /etc/profile
echo $JAVA_HOME #查看
echo "export JAVA_HOME=/opt/jdk17" >>/etc/profile
1、查看当前终端配置的ROS版本

