`
oboaix
  • 浏览: 274250 次
社区版块
存档分类
最新评论

Linux学习日志记录001

 
阅读更多

以前记录的学习日志,做个记录,以资鼓励学习:

 

#批量自动 增加用户---------------------useradd.sh

#!/bin/bash
#program : this is program for adduser batch

accountfile=accountinfo.txt
cat /dev/null > $accountfile
test -e "accountfile" && rm -f "$accountfile"; touch "$accountfile" || touch "#accountfile"

read -p "Please input your majar : " majar
read -p "Please input your grade : " grade
read -p "Please input your start number :" start_nu

read -p "Please input your the user number :" user_nu
read -p "Please choice passwd stardand: 1) same as username 2) random: " pwd

if [ "majar" = "" ];then

 echo "You should input the majar!!!";exit 1

fi
testing1=`echo $grade | grep [^0-9]`
testing2=`echo $start_nu | grep [^0-9]`
testing3=`echo $user_nu | grep [^0-9]`

if [ "$testing" != "" -o "$testging2" != "" -o "$itesting3" != "" ]; then
 echo "The grade or start number  or user number has include character";exit 1
fi

echo "Generate users ................."
for ((i=$start_nu;i< $(($start_nu + $user_nu));i++))
do
 account=$majar$grade$i
 if [ "$pwd" = "1" ]; then
  password="$account"
 else
  password=""
  test_nu=0
  until [ "$test_nu" = "6" ]
  do
   temp_nu=$(($RANDOM*50/32767+30))
   until [ "$temp_nu" != "60" ]
   do
    temp_nu=$(($RANDOM*50/32767+30))
   done
   temp_ch=`printf "\x$temp_nu"`
   password=$password$temp_ch
   test_nu=$(($test_nu+1))
  done
 fi
 echo "$account":"$password" >> "$accountfile"
done
cat "$accountfile" | cut -d ":" -f1 | xargs -n 1 useradd  #批量增加用户,逐行增加第一个field
chpasswd < "$accountfile"   #批量增加密码,符合格式:win00:123456 
cat "$accountfile"   
pwconv     #避免明码
echo "OK,Successful"

#批量自动 增加用户---------------------useradd.sh

 

#批量自动 删除用户---------------------userdel.sh

#需要与上面指定文件配合操作,文件路径

 

#!/bin/bash
cat "accountinfo.txt" | cut -d : -f1 | xargs -n 1 userdel -r

#需要与上面指定文件配合操作,文件路径

#批量自动 删除用户---------------------userdel.sh

 

 

 

 

#------强制踢出用户

方法一:

[root@Centos ~]# w
 15:20:07 up  5:11,  3 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.128.1    15:03   18.00s  0.42s  0.10s -bash
root     pts/1    192.168.128.1    15:05    0.00s  0.07s  0.00s w
math2000 pts/2    192.168.128.1    15:13    2:39   0.04s  0.04s -bash

 

[root@Centos user]# pkill -kill -t pts/2

 

方法二:

ps -ef

501       4204  4202  0 15:32 ?        00:00:00 sshd: math20001@pts/2

 

kill -9 4204

#------强制踢出用户

 

 

 

 

 

#各种for 循环用法----------------------------------------

 

#!/bim/bash
echo "for((i=1;i<=10;i++));---------------"
for((i=1;i<=10;i++));
do
 echo $(expr $i \* 4)
done

echo "for((i=1;i<=10;i++));---------------"
echo "for a in (seq 10)------------------ "
for a in $(seq 10) 
do
 echo "print a: "$a;
done

echo "for a in (seq 10)------------------ "

echo "ls variable------------------ "
ls=`ls  /u01/study/`
for var in $ls 
do
 echo "print variable : "$var;
done
echo "==========for i in *.sh=============="

for sh in `ls *.sh`
do 

echo "print sh file : $sh"

done
echo "========================="
for v in abc xxx yyy zzz 123 444 
do
 echo "print slef define variable ====" $v;
done

echo "-----------------------"
for x in {5..15} 
do
 echo "print number(5-15)=====" $x
done
echo "======(seq 2 11)=============="

for m in $(seq 2 11) 
do
 echo $m;
done
echo "==========for i in stringchar {1..10}"
for ii in  {1..10}
do
 echo $ii
done

echo "awk==============="
awk 'BEGIN{for(i=1;i<=10;i++)print i}'

#各种for 循环用法----------------------------------------

 

 

 

 

 

#各种for 循环用法2------阶乘----------------------------------

#!/bin/bash

list="We want to test shell script."
for a in $list; do

        echo "print : $a"

done


for i in {1..10}; do
        echo "test : $i"
done
echo "Test awk.........."
awk 'BEGIN{for(i=1;i<10;i++)print i}'
echo "--------------------------------"
 for((i=1;i<=10;i++));do echo $(expr $i \* 4);done
#echo "print : $"
echo "----------------"

echo "----------------"
fact=1
for((i=1;i<=10;i++));
do
        # echo $(expr $i \* 4);
        fact=$(expr $fact \* $i);
        echo "check fact value ===" $fact;
done
echo "print sum : " $fact
#各种for 循环用法2------阶乘----------------------------------

 

 

 

#文件比较运算符=======================

-e filename 如果 filename存在,则为真 [ -e /var/log/syslog ]
-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]
-f filename 如果 filename为常规文件,则为真 [ -f /usr/bin/grep ]
-L filename 如果 filename为符号链接,则为真 [ -L /usr/bin/grep ]
-r filename 如果 filename可读,则为真 [ -r /var/log/syslog ]
-w filename 如果 filename可写,则为真 [ -w /var/mytmp.txt ]
-x filename 如果 filename可执行,则为真 [ -L /usr/bin/grep ]
filename1-nt filename2 如果 filename1比 filename2新,则为真 [ /tmp/install/etc/services -nt /etc/services ]
filename1-ot filename2 如果 filename1比 filename2旧,则为真 [ /boot/bzImage -ot arch/i386/boot/bzImage ]
字符串比较运算符 (请注意引号的使用,这是防止空格扰乱代码的好方法)
-z string 如果 string长度为零,则为真 [ -z "$myvar" ]
-n string 如果 string长度非零,则为真 [ -n "$myvar" ]
string1= string2 如果 string1与 string2相同,则为真 [ "$myvar" = "one two three" ]
string1!= string2 如果 string1与 string2不同,则为真 [ "$myvar" != "one two three" ]
算术比较运算符
num1-eq num2 等于 [ 3 -eq $mynum ]
num1-ne num2 不等于 [ 3 -ne $mynum ]
num1-lt num2 小于 [ 3 -lt $mynum ]
num1-le num2 小于或等于 [ 3 -le $mynum ]
num1-gt num2 大于 [ 3 -gt $mynum ]
num1-ge num2 大于或等于 [ 3 -ge $mynum ]

 

#文件比较运算符=======================

 

 

 

#抽取所有的jpg文件图片,然后统一压缩成文档==================

find / -name *.jpg -type f -print | xargs tar -zcvf images.tar.gz

#抽取所有的jpg文件图片,然后统一压缩成文档==================

分享到:
评论

相关推荐

    logc.rar_C++ 日志系统_Linux日志_linux 日志_logc_日志记录 linux

    虽然我们没有具体的代码内容,但可以推测这个文件可能包含了一些基本的日志记录功能,如设置日志级别、记录日志信息到文件或控制台等。 总的来说,理解并构建一个C++日志系统涉及对Linux日志机制的熟悉,掌握C++...

    Kettle运行日志记录

    学习这些日志记录知识可以帮助我们更好地管理和优化Kettle的工作流程,及时发现并解决问题。通过分析日志,我们可以了解Job和Transformation的执行顺序、耗时以及错误发生的位置,从而提高ETL流程的稳定性和效率。 ...

    linux收集日志工具

    在Linux环境下,各种服务、应用以及系统组件会不断产生日志,这些日志记录了它们运行时的事件、错误、警告和其他关键信息。通过对这些日志的分析,我们可以发现潜在的问题,例如系统崩溃的原因、安全漏洞或资源瓶颈...

    logc.rar_C C 日志_C语言日志记录_Linux日志_logc语言_日志系统

    在IT行业中,日志记录是软件开发中不可或缺的一部分,它帮助开发者追踪程序运行的状态,定位错误,以及进行性能分析。本文将围绕“logc.rar”这个C语言实现的日志记录库进行深入探讨。 标题中的“logc.rar”指的是...

    Linux网络日志分析与流量监控

    进程统计日志记录了系统中进程的启动和终止情况。当某个进程终止时,系统会自动记录这一事件,并将其添加到进程统计日志文件中。这类日志有助于管理员了解系统中服务的运行状态,从而进行性能优化或故障排除。 ####...

    Linux系统怎么分析Nginx日志

    也许在目前许多学者都不知道如何分析Nginx日志,Linux系统日志下的Nginx 日志可以查看系统运行记录和出错说明,对Nginx 日志的分析可以了解系统运行的状态。那么Linux系统Nginx日志怎么分析呢?下面小编为你详解一下...

    UNIX Linux网络日志分析与流量监控

    UNIX/Linux系统通过syslogd或rsyslogd服务来记录系统、安全和应用程序日志。这些服务将日志信息记录到/var/log目录下的不同文件中。常用的系统日志文件有/var/log/messages(通用信息)、/var/log/secure(安全认证...

    Linux 服务器日志文件查找技巧精粹.doc

    在寻找特定事件时,可以先模拟该事件,然后在日志中查找对应的记录,例如尝试失败的su命令。 此外,logsurfer是一个高级的日志文件搜索工具,提供更精细的控制。它允许使用两组规则表达式,日志行需匹配第一组但...

    Linux学习笔记记录

    在Linux操作系统中,学习和掌握基本的命令是至关重要的,这能够帮助你更有效地管理和操作...以上是Linux学习的一些基础知识点,通过练习和实际操作,你可以逐步熟悉并掌握这些命令,提高你在Linux环境中的工作效率。

    日志文件源代码(C语言)

    事件日志记录了系统中发生的特定事件,如用户登录、服务启动/停止等;消息日志则包含程序运行过程中的各种信息、警告和错误消息。C语言中的日志管理通常涉及读取、写入、搜索和分析这些日志文件。 在Linux下,C语言...

    查看日志_linux_

    结合`tail`和`grep`,你可以实时监控包含特定模式的最新日志记录: ```bash tail -f /var/log/syslog | grep 'error' ``` 有时,日志文件可能会被压缩,例如`.gz`格式。在这种情况下,可以使用`zcat`、`zless`或`...

    src_Linux-kernel-release-1.0.rar_Linux内核日志_linux 日志_linux内核源码_内核

    1. **内核日志**:在Linux系统中,内核日志是一个重要的功能,它记录了内核运行过程中的事件和错误信息。这些日志通常存储在`/var/log/kern.log`或`/var/log/messages`中,通过`dmesg`命令可以查看。日志信息对于...

    linux学习笔记分享

    Linux 目录架构和文件系统详解 ... + /var/log/httpd, /var/log/news, /var/log/:记录相关服务的日志文件 通过了解 Linux 目录架构和文件系统,可以更好地管理和维护 Linux 系统,提高工作效率和系统安全性。

    linux运维学习笔记:Mysql日志.pdf

    错误日志记录了MySQL服务的启动、运行或停止MySQL时遇到的问题。错误日志主要用于数据库管理员进行故障排查。通过错误日志,管理员可以迅速定位问题所在,并进行相应的处理。错误日志的配置通常在***f配置文件中设置...

    linux c 多线程安全日志系统

    在Linux C环境中,多线程安全日志系统是一种常见的需求,尤其在服务器应用程序中,它能够确保在高并发环境下正确地记录系统事件。本项目利用线程锁、信号量和文件操作技术,构建了一个安全的日志系统,同时考虑了...

    linux学习笔记 .doc

    Linux学习笔记概述 Linux是一种自由和开放源代码的操作系统,其设计目标是提供一个轻量级、高效且安全的计算平台。Linux系统采用类UNIX目录结构,每个目录都有特定的功能和用途。以下是对Linux主要目录及其内容的...

    windows日志分析#linux日志分析#web日志分析#windows入侵排查#linux入侵排查

    Linux系统的日志通常存储在/var/log目录下,包括auth.log(认证日志)、syslog(系统日志)、messages(消息日志)等。分析这些日志文件可以帮助识别异常进程、网络连接、文件系统活动等。例如,`/var/log/auth.log`...

    linux学习指南(入门)

    Linux学习指南是为初学者设计的一份详尽教程,旨在帮助你快速掌握Linux操作系统的基础知识,特别是关于命令行界面的使用。Linux是一个开源的操作系统,它提供了强大的灵活性和可定制性,广泛应用于服务器、开发环境...

    Mysql+linux安装日志.rar_MYSQL_historyxrl_linux

    本教程将详细解析这个过程,结合提供的"MYSQL_historyxrl_linux"标签,我们可以推测这是一个关于MySQL安装历史记录或者涉及特定的日志分析。以下是安装MySQL在Linux上的步骤,以及可能涉及的日志分析。 **一、MySQL...

    Debian linux学习笔记

    ### Debian Linux 学习笔记 #### 一、基本命令与目录结构 Debian Linux 是一个广泛使用的 Linux 发行版,其稳定性和安全性受到广大用户的认可。对于初学者来说,掌握 Debian Linux 的基本命令和目录结构至关重要。...

Global site tag (gtag.js) - Google Analytics