Linux学习


一、用户管理

1、建工作组
groupadd test_group
2、新建用户同时增加工作组
useradd -g test_group -d /home/test_user test_user
3、给用户设置密码
passwd test_user
4、删除用户(但不删除用户目录)
userdel test_user
5、删除用户(同时删除目录)
userdel -r test_user
6、将用户加入组
usermod -g test_group test_user
7、删除组(如果还有用户在组中,则需要先删除用户)
groupdel test_group
8、相关文件
/etc/passwd 用户名:密码:UID(用户ID):GID(组ID):描述性信息:主目录:默认Shell
/etc/shadow
用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段
/etc/group
/etc/group

二、文件管理

chown cc:cc install.log
chmod 600 install.log
ll -atrh
cd
pwd
mkdir -p ./test/dir
cp -a * /home/test/
mv * ./dir/
scp root@1.1.1.1:/home/cc/* /home/cc/

三、网络

telnet 1.1.1.1 80
ifconfig
netstat -tunlp
ping

固定IP

vim /etc/sysconfig/network-scripts/ifcfg-ens33

DNS1=192.168.0.1        
IPADDR=192.168.1.122    
GATEWAY=192.168.1.1      
PREFIX=24

service network restart

四、服务管理

ps aux –-sort=rss
ps aux –-sort=%cpu
ps aux|grep mysql
top  #进入后按P M 可cpu 内存排序
kill -9 pid
find / -name install.log &  #后台执行,如果有日志会输出
nohup find / -print > /root/file.log & #脱离终端执行
uname -a  #内核版本

service命令

service命令其实是去/etc/init.d目录下,去执行相关程序
service命令启动redis脚本
service redis start
直接启动redis脚本
/etc/init.d/redis start

systemctl命令

systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程,尽可能更多进程并发启动。systemd对应的进程管理命令是systemctl

systemctl命令兼容了service
即systemctl也会去/etc/init.d目录下,查看,执行相关程序

systemctl redis start
systemctl redis stop
systemctl enable redis
systemctl disable redis

systemctl命令管理systemd的资源
放在目录/usr/lib/systemd/system

sysystemctl status bluetooth.service
sysystemctl start bluetooth.service
sysystemctl stop bluetooth.service
sysystemctl disable bluetooth.service
sysystemctl enable bluetooth.service

设置自启脚本

编辑/etc/rc.local
sh /home/bmsoft/gocron/gocron_node.sh

查看文本

cat -n  install.log
tac install.log
head -100 install.log
tail -100 install.log
vim :wq! i u dd ZZ
wc -l install.log
awk -F, '{print $1,$2}'   log.txt
grep log.txt ERROR

磁盘

 df -h
 du -h -max-depth=1
 stat .
 mount -p loop /mnt/RedHat.Enterprise.Linux.6.iso /mnt/vcdrom   挂载
 umount /mnt/vcdrom 

防火墙

systemctl status firewalld.service  #查看防火墙状态
systemctl start firewalld.service  #开启防火墙
systemctl stop firewalld.service  #关闭防火墙
firewall-cmd --get-active-zones  #查看所有活动区域       
firewall-cmd --list-all  #列出所有端口
firewall-cmd --zone=public --add-port=8080/tcp –permanent #添加端口 
firewall-cmd --zone=public --remove-port=8080/tcp –permanent #移除端口
firewall-cmd –reload #以上修改需要执行此命令 应用

压缩解压

 #.zip
 zip test.zip a.txt passwd.txt
 unzip -d ./zip/ test.zip
 
 #.gz
 gzip abc.txt  #会删除源文件
 gzip -d abc.txt.gz  #会删除源文件

 #.bz2
 bzip2 -k bcd.txt  #-k 保留源文件
 bzip2 -d bcd.txt.bz2 #会删除源文件

 #.tar
 tar -cvf text.tar a.txt passwd.txt  #会保留源文件
 tar -xvf text.tar  #会保留源文件

 #.tar.gz
 tar -zcvf tmp.tar.gz a.txt passwd.txt
 tar -zxvf tmp.tar.gz -C aaaa/   #指定目录
 
 #.tar.bz2
 tar -zcvf tmp.tar.bz2 a.txt passwd.txt
 tar -jxvf tmp.tar.bz2 -C aaaa/   #指定目录

软件安装卸载

本地yum:

    touch /mnt/vcdrom  创建挂载点
    mount -p loop /mnt/RedHat.Enterprise.Linux.6.iso /mnt/vcdrom   挂载
    cp /mnt/RedHat.Enterprise.Linux.6.iso /var/yum   拷贝文件
    cd /etc/yum.repos.d
    touch localPackages.repo 
    vi localPackages.repo 
[local]  
name=Instructor Server Repository     
baseurl=file:///var/yum/Server  
enabled=1  
gpgcheck=0
yum clean all 
yum list all  
yum install screen  
umount /mnt/vcdrom  

一:

 yum install -y ssh
 yum remove gcc
 yum list installed |grep vim

二:

rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm
rpm -U gcc-4.4.7-4.el6.x86_64.rpm
rpm -e gcc
rpm -qa |grep vim

三:

tar zxvf httpd-2.2.15.tar.gz -C /usr/local/src #解压
./configure –prefix=/usr/local/httpd #配置
make  #编译
make install  #安装

shell

#!/bin/bash  
#它告诉系统这个脚本需要什么解释器来执行

chmod +x ./test.sh  #增加可执行权限
./test.sh  or /bin/sh test.sh  #执行的两种方式

#几个变量
$0  当前执行的进程名
$1, $2, ...是位置参数
$? 命令执行后返回的状态
$*  所有位置参数的内容

     
#定义变量
your_name="qinjx"  

#使用变量
echo $your_name   

#各种符号区别
半引号``  :执行内容
单引号’’  :变量引用无效 ,转义无效
双引号””  :可以有变量, 可以出现转义字符    

():子命令组,命令替换相当于``,初始化数组
{}:顺序执行命令
[]:执行布尔类型, [ $i -lt 5 ]
[[]]:if [ $a -ne 1] && [ $a != 2 ] 等效 if [[ $a != 1 && $a != 2 ]]
${a}:代表a的值,可以把大括号省略
$():命令替换,相当于``
$(()):相当于``,但可以使用C语言风格,甚至三目计算

#拼接
echo "1""1"
echo "2$string_1" #拼接字符串

#获取字符串长度   
string="abcd"
echo ${#string} 

 
#提取子串
string="runoob is a great site"
echo ${string:1:4}  

 
#数组
arr_1=(1 2 3 "3")
echo ${arr_1[*]}  #打印全部数组
echo ${arr_1[0]}
echo ${#arr[*]} #数组元素的个数
echo ${#arr[2]}  #单个元素长度

 
#加减乘除计算
echo `expr $a * $b`  
echo $(( 3 + 5 )) #也可以用两个括号,注意空格

 

#99乘法表

for((i =1 ;i<=9;i++))
do
        for((j =1 ;j<=i;j++))
        do
                echo -n "$i*$j=$(($i*$j)) "
                if(($i==$j));
                then
                        echo -e "\n"
                fi
        done
done

insert mysql 案例

#!/bin/bash
#
# @file write_to_db_mysql.sh
# @brief wirte Exception log to database
# @author ChengC
# @version 0.1
# @date 2022-06-16
#

TABLE="bmmsgparser_log"
create_tm=$(date "+%Y-%m-%d %H:%M:%S")
exception_data1=$(cat bmMsgParser.log |grep Exception |tail -3)
exception_data2=${exception_data1//,/ }
exception_data3=${exception_data2//\'/ }
exception_data4=${exception_data3//\"/ }
is_success="Y"
if [ -z "$exception_data4" ]
then
    is_success="Y"
else
    is_success="N"
fi  
query="'$create_tm','$is_success','$exception_data4'"
mysql -h 10.5.15.25 -P 23306 -u dbadmin  -pbmSoft2020 -e  "INSERT INTO gocron.bmmsgparser_log (create_tm,is_success,exception_data) values ($query);"     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值