zoukankan      html  css  js  c++  java
  • 脚本

    vim first.sh 写一个命名为first的脚本文件

    echo //显示一串字符并自动换行

    read NAME //从屏幕获取一段字符,并赋予NAME

    $NAME //取NAME变量的值

    # //只用一个#表示注释文本

    #!/bin/bash
    
    oldext="JPG"
    
    newext="jpg"
    
    dir=$(eval pwd)
    for file in $(ls $dir | grep .$oldext)
    
            do
    
            name=$(ls $file | cut -d. -f1)
    
            mv $file ${name}.$newext
    
            done
    
    echo "change JPG=====>jpg done!"

    下面对针对这个程序作简单说明:
    1.变量oldext和newext分别指定旧的扩展名和新的扩展名。dir指定文件所在目录;
    2.“ls $dir | grep .$oldext”用来在指定目录dir中获取扩展名为旧扩展名的所有文件;
    3.在循环体内先利用cut命令将文件名中“.”之前的字符串剪切出来,并赋值给name变量;接着将当前的文件名重命名为新的文件名。

    通过这个脚本,所有照片的扩展名都成功修改。为了使这个脚本更具有通用型,我们可以增加几条read命令实现脚本和用户之间的交互。

    改进版的脚本如下:

    #!/bin/bash
    
    read -p "old extension:" oldext
    
    read -p "new extension:" newext
    
    read -p "The directory:" dir
    
    cd $dir
    for file in $(ls $dir | grep .$oldext)
    
            do
    
            name=$(ls $file | cut -d. -f1)
    
            mv $file ${name}.$newext
    
            echo "$name.$oldext ====> $name.$newext"
    
            done
    echo "all files has been modified."

    附:另一个版本

    #!/bin/sh
    
    # file name : rename_suffix.sh
    
    # author: zhouhh
    
    # Email: ablozhou@gmail.com
    
    # Date : 2008.4.1
    
    echo "input what suffix will be replaced :"
    
    read SUFFIX_SRC
    
    echo "input what suffix of file to rename to:"
    
    read SUFFIX_DST
    
     
    for i in *.$SUFFIX_SRC
    
    do
    
        if [ -e $i ]; then
    
            echo "mv $i to `basename $i .$SUFFIX_SRC`.$SUFFIX_DST"
    
            mv $i `basename $i .$SUFFIX_SRC`.$SUFFIX_DST
    
        else
    
            echo "file does not exist."
    
            exit -1
    
        fi
    
     
    done

    crontab -e命令(第一个0代表0分,第二个0代表0时,接下来的3个*号表示每天每月每周都执行,command代表您要执行的脚本.)

    # m     h    dom    mon     dow       command
    0    0    *    *    *    /home/yourshell.sh
  • 相关阅读:
    供安全工程师实用的SOC模型
    Windows-NTFS-ADS在渗透测试中的利用
    域安全的基础知识上
    Linux下利用动态链接劫持库函数并注入代码
    多线程sshd爆破程序代码
    Windows NTLM Hash和Hash传递、Key传递攻击
    替换linux系统文件etc下passwd文件的字段获取真正的root权限
    攻防对抗中常用的windows命令(渗透测试和应急响应)
    获取权限后权限维持的方法
    RocketMQ启动mqbroker.cmd没反应
  • 原文地址:https://www.cnblogs.com/victory8023/p/6171188.html
Copyright © 2011-2022 走看看