shell脚本编写之程序编辑demo

#! /bin/Bash

#编写一个Shell程序,此程序的功能是:显示root下的文件信息,然后建立一个abc的文件夹
#在此文件夹下建立一个文件k.c,修改此文件的权限为可执行。

echo "根目录下文件信息为:"
ls -l /

echo "输入测试文件夹路径:"
read path

if [ ! -d $path ]
then
echo "您输入的为空路径!"

else

if [ -d $path/abc ]
then
echo "目录下 abc 文件夹存在!"

else
cd $path
mkdir abc
cd abc
touch k.c
chmod +x k.c
echo "执行成功!"
fi

fi


crontab命令使用方法见博客

#! /bin/sh
#	某系统管理员需每天做一定的重复工作,请按照下列要求,编制一个解决方案:

#	在下午4 :50删除/abc目录下的全部子目录和全部文件;
	50 16 * * * rm -rf /abc/*
	
#	从早8:00~下午6:00每小时读取/xyz目录下x1文件中每行第一个域的全部数据
#   加入到/backup目录下的bak01.txt文件内;
	0 8-18/1 * * * cat /xyz/x1 | while read line;do echo $line>>/backup.bak01.txt; done
	
#	每逢星期一下午5:50将/data目录下的所有目录和文件归档并压缩为文件:backup.tar.gz;
	50 17 * * 1 tar -zcvf backup.tar.gz /data
	
#	在下午5:55将IDE接口的CD-ROM卸载(假设:CD-ROM的设备名为hdc);
	55 17 * * * umount /dev/hdc
	
#	在早晨8:00前开机后启动。
	


  编写两个Shell程序kk及aa,在kk中输入两个数,调用aa计算计算这两个数之间奇数的和。

xiaohulu:shell lw$ vi aa

#! /bin/sh

sum(){
a=$1
b=$2
temp=0

for((i=$a;i<=$2;i++))
  do
   if((i%2==1))
    then
     temp=`expr $temp + $i`
   fi
 done
echo "The result is : $temp "
}
sum $1 $2
xiaohulu:shell lw$ vi kk

#! /bin/sh
echo "Please input a  and  b:"
read a b
./aa $a $b



#! /bin/sh
#编写4个函数分别进行算术运算+、-、*、/,并编写一个菜单,实现运算命令。

sum(){
echo "The sum is : `expr $1 + $2`"
}

sub(){
echo "The sub is : `expr $1 - $2`"
}

mul(){
echo "The mul is : `expr $1 \* $2`"
}

div(){
echo "The div is : `expr $1 / $2`"
}


while true
do
 echo "**************************************************"
 echo "********   Please    input    operator  **********"
 echo "****************    +  is  sum    ****************"
 echo "****************    -  is  sub    ****************"
 echo "****************    *  is  mul    ****************"
 echo "****************    /  is  div    ****************"
 echo "****************  exit is   0     ****************"

 read  operator
 if  [ "$operator" = "0" ]
  then
    exit;
 fi
 echo ""
 echo "Plsase input num1 and num2 , Space separated:"
 read num1 num2

 case $operator in
 sum) sum $num1 $num2;;
 sub) sub $num1 $num2;;
 mul) mul $num1 $num2;;
 div) div $num1 $num2;;
   *) echo "";
      echo "error , Please input [sum,sub,mul,div] select operator!";;
 esac


 done





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用shell脚本删除列,下面是一个demo:cut -d, -f1,2,4,5,6,7,8,9,10,11,12,13,14 - --output-delimiter=" " test.csv > test_clean.csv ### 回答2: shell脚本删除列demo可以通过使用awk命令来实现。awk是一种用于处理文本的流式编辑器,可以很方便地操作文本文件的列。 以下是一个示例的shell脚本删除列demo: ```shell #!/bin/bash # 假设我们有一个名为data.txt的文本文件,内容如下: # 列1 列2 列3 列4 # 1 2 3 4 # A B C D # 要删除第3列,可以使用awk命令,并将结果重定向到一个新文件中 awk '{$3=""; print}' data.txt > new_data.txt # 使用awk命令,将每一行的第3列的内容设置为空,然后打印整行。结果将被重定向到新的文件new_data.txt中。 # 执行脚本后,new_data.txt 文件将会是如下内容: # 列1 列2 列3 列4 # 1 2 4 # A B D # 第3列已被删除,原来的数据文件data.txt并不会改变。 ``` 这是一个简单的shell脚本示例,用于演示如何通过使用awk命令来删除列。你可以根据需要修改列的位置和文件名来删除不同的列。 ### 回答3: shell脚本删除列demo可以使用awk命令来完成。以下是一个简单的示例: 假设有一个名为input.txt的文件,文件内容如下: ``` 姓名,性别,年龄 张三,男,25 李四,女,30 王五,男,35 ``` 现在我们想要删除第二列(性别)。可以编写一个shell脚本如下: ```bash #!/bin/bash # 定义输入文件名和输出文件名 input_file="input.txt" output_file="output.txt" # 使用awk命令删除第二列,并将结果输出到output.txt文件中 awk 'BEGIN {FS=OFS=","} { $2 = ""; print $0 }' "$input_file" > "$output_file" ``` 脚本中,我们首先定义了输入文件名`input.txt`和输出文件名`output.txt`。然后使用awk命令,通过设置输入和输出的字段分隔符为逗号`FS=OFS=","`,将第二列设为空字符串`$2 = ""`,然后打印整行`print $0`。最后将结果输出到`output.txt`文件中。 运行脚本后,`input.txt`中的内容将会被处理,删除第二列,并将结果保存到`output.txt`中。输出文件的内容如下: ``` 姓名,,年龄 张三,,25 李四,,30 王五,,35 ``` 注意,原始文件`input.txt`并没有被改动,只有输出文件`output.txt`被生成和修改。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值