20221107-20221111
/*
* 作者:徐子宸
* 功能:用cat实现同时显示三个文件的内容
* 来源:根据上课时老师讲解的内容进行改写
*
*
*/
#include<stdlib.h>
#include<stdio.h>
int main(int argc,char *argv[])
{
char cmd[200]={0};
if(argc!=4)
{
puts("请输入文件名:\n");
return -1;
}
sprintf(cmd,"cat %s",argv[1]); // 功能是将数字或者其他数据格式化成字符串保存到一个字符串变量中
system(cmd);
sprintf(cmd,"cat %s",argv[2]);
system(cmd);
sprintf(cmd,"cat %s",argv[3]);
system(cmd);
return 0;
}
#! /bin/bash
read -p "input:
" string
test $string = "hi"
echo $?
#!/bin/bash
echo "input:"
read NUM1
read NUM2
echo "NUM1=$NUM1 NUM2=$NUM2"
#!/bin/bash
read -p "input:" NUM1 NUM2
echo "NUM1=$NUM1,NUM2=$NUM2"
#!/bin/bash
read -p "input:" NUM1 NUM2
expr $NUM1 + $NUM2
#!/bin/bash
read -p "input:" NUM1 NUM2
ADD=`expr $NUM1 + $NUM2`
echo "ADD = $ADD"
#!/bin/bash
read -p "input:" string
test -z $string
echo $?
#! /bin/bash
read -p "input:" string
test -n $string
echo $?
#! /bin/bash
if [ -d $1 ]
then
echo "yes"
else
echo "no"
fi
#! /bin/bash
if [ $# -ne 1 ]
then
exit
fi
if [ -f $1 ]&&[ -r $s1 ]&&[ -w $s1 ]&&[ -x $s1 ]
then
echo "[普通文件][存在][可读][可写][可执行]"
elif [ -w $1 ]&&[ -f $1 ]
then
echo "[普通文件][可写]"
elif [ -r $1 ]&&[ -f $1 ]
then
echo "[普通文件][可读]"
elif [ -x $1 ]&&[ -f $1 ]
then
echo "[普通文件][可执行]"
elif [ -d $1 ]
then
echo "[目录]"
else
echo "[未知]"
fi
#问题:乘法的结果错误
#! /bin/bash
if [ $# -ne 3 ]
then
echo "ERROR"
fi
case $2 in
'+')
result=`expr $1 + $3`
;;
'-')
result=`expr $1 - $3`
;;
'*')
result=`expr $1 \* $3`
;;
'/')
result=`expr $1 / $3`
;;
*)
echo "输入错误"
esac
echo "result=$result"
#! /bin/bash
#功能:计算1到10的值
#作者:徐子宸
#来源:修改CSDN某文章的代码
sum=0
for I in {1..10}
do
#sum=0
#let sum=$sum+$I
sum=`expr $sum + $I`
done
echo "1+......+10的值为"$sum
#功能:请输入你想要下载的软件的名字
#让用户确认是否下载这个软件
#输入y,下载软件
#输入n,取消下载
#姓名:徐子宸
#来源:原创
#问题:无论输入yes还是no,在软件包名正确的情况下,都进行下载
#!/bin/bash
if [ $# -ne 1 ]
then
echo "ERROR"
exit
fi
echo "输入yes下载,输入no取消下载"
read result
if [ $result = "yes" ]
then
echo "下载软件"
sudo apt install $1
elif [ $result = "no" ]
then
echo "取消下载"
fi
#作者:徐子宸
#功能:输入文件名,如果有写的权限,就向文件中写入"hello world"
#如果没有写的权限,给它添加写的权限,然后再写入"hello world"
#来源:原创
#!/bin/bash
if [ $# -ne 1 ]
then
echo "输入错误"
exit
fi
if [ -f $1 ]&&[ -w $1 ]
then
echo "hello world">$1
else
chmod u+w $1
echo "hello world">$1
fi
#!/bin/bash
read -p "input:" NUM1 NUM2
ADD=`expr $NUM1 \* $NUM2`
echo "ADD=$ADD"
#功能:复制当前目录下所有文件到backup子目录下
#!/bin/bash
if [ ! -d $HOME/backup ]
then
mkdir $HOME/backup
fi
flist=`ls`
for file in $flist
do
if [ $# = 1 ]
then
if [ $1 = $file ]
then
echo "$file found"
exit
fi
else
cp $file $HOME/backup
echo "$file copied"
fi
done
echo ***Backup Completed***
#功能:打印99乘法表
#来源:抄袭
#! /bin/bash
i=1
sum=0
while [ $i -le 9 ]
do
num=1
while [ $num -le $i ]
do
sum=`expr $i \* $num`
echo -n "$i*$num=$sum "
num=`expr $num + 1`
done
i=`expr $i + 1`
echo ""
done
#思路分析:
# i={1,2,3,4,5,6,7,8,9}
# num=1
# num={1,2,3,4,5,6,7,8,9}
#
# sum=1*1 sum=`expr $i \* $num`
#
# sum=2*1 i=`expr $i + 1`
# sum=2*(1+1) num=`expr $num + 1`
#
# sum=3*1
# sum=3*(1+1)
# sum=3*(1+1+1)
#
# sum=4*1
# sum=4*(1+1)
# sum=4*(1+1+1)
# sum=4*(1+1+1+1)
#
# sum=5*1
# sum=5*(1+1)
# sum=5*(1+1+1)
# sum=5*(1+1+1+1)
# sum=5*(1+1+1+1+1)
#
# sum=6*1
# sum=6*(1+1)
# sum=6*(1+1+1)
# sum=6*(1+1+1+1)
# sum=6*(1+1+1+1+1)
# sum=6*(1+1+1+1+1+1)
#
# sum=7*1
# sum=7*(1+1)
# sum=7*(1+1+1)
# sum=7*(1+1+1+1)
# sum=7*(1+1+1+1+1)
# sum=7*(1+1+1+1+1+1)
# sum=7*(1+1+1+1+1+1+1)
#
# sum=8*1
# sum=8*(1+1)
# sum=8*(1+1+1)
# sum=8*(1+1+1+1)
# sum=8*(1+1+1+1+1)
# sum=8*(1+1+1+1+1+1)
# sum=8*(1+1+1+1+1+1+1)
# sum=8*(1+1+1+1+1+1+1+1)
#
# sum=9*1
# sum=9*(1+1)
# sum=9*(1+1+1)
# sum=9*(1+1+1+1)
# sum=9*(1+1+1+1+1)
# sum=9*(1+1+1+1+1+1)
# sum=9*(1+1+1+1+1+1+1)
# sum=9*(1+1+1+1+1+1+1+1)
# sum=9*(1+1+1+1+1+1+1+1+1)
#
# 分析完毕
#!/bin/bash
for J in {1..9}
do
for I in {1..9}
do
if [ $I -ge $J ]
then
break
fi
MUL=`expr $I \* $J`
echo -n "$I * $J=$MUL "
done
echo""
done
#功能:判断用户;主目录下是否有file-dir和dir-dir目录
#如果这两个目录存在,询问是否删除这两个目录
#如果用户输入y,则将这两个目录删除,重新创建这两个目录
#如果用户输入n,输出继续
#请用户输入一个路径,将这个路径下的文件拷贝到file-dir
#将这个路径下的文件夹拷贝到dir-dir
#预计拷贝的文件和目录的个数
#来源:朱鸿飞老师
#!/bin/bash
for dir in $HOME/file-dir $HOME/dir-dir
do
if [ -d $dir ]
then
read -p "是否删除:" OP
case $OP in
Y|YES|y/yes)
rm -r $dir
mkdir $dir
;;
N|NO|no|n)
echo "continue"
;;
esac
else
mkdir $dir
fi
done
fileCount=0
dirCount=0
read -p "请输入一个路径:" pathname
flist=`ls $pathname`
# $pathname指代路径
# $list指代路径下的文件
for list in $flist
do
if [ -f $pathname/$list ]
then
cp $pathname/$list $HOME/file-dir
fileCount=`expr $fileCount + 1`
elif [ -d $pathname/$list ]
then
cp -r $pathname/$list $HOME/dir-dir
dirCount=`expr $dirCount + 1`
fi
done
echo "fileCount = $fileCount"
echo "dirCount = $dirCount"
#! /bin/bash
for((i=1;i<=9;i++))
for((j=i;j<=9;j++))
do
SUM=`expr $i /* $j`
done
echo "SUM=$SUM"
for J in {1..9}
do
for I in {1..9}
do
if [ $I -ge $J ]
then
MUL=`expr $I \* $J`
echo -n "$J * $I =$MUL"
fi
done
echo ""
done
#!/bin/bash
for J in {1..9}
do
for I in {1..9}
do
if [ $I -ge $J ]
then
continue 1
fi
MUL=`expr $I \* $J`
echo -n "$I * $J=$MUL "
done
echo""
done