我必须编写创建两个目录输入和输出并编写一个读取文件并将内容复制到另一个文件的c代码。然后a)写一个shell脚本,它将为20个文件执行此操作。 b)必须从Input目录中读取文件并将文件输出到Output目录。我在bash脚本部分有问题。请帮帮我
#!/bin/bash
echo "Enter the path of source directory:"
read dir1
echo "Enter the path of the destination directory:"
read dir2
for f in dir1/*
do
arg1=$dir1/$f
arg2=$dir2/$f
gcc program.c
./a.out $arg1 $arg2
done
答案 0 :(得分:1)
您的代码存在一些问题:
for f in dir1/*
应为for f in $dir1/*
变量$f
也包含$dir1
路径。
这是我的解决方案:
#!/bin/bash
echo "Enter the path of source directory:"
read dir1
echo "Enter the path of the destination directory:"
read dir2
gcc program.c
CMD=$PWD/a.out
cd $dir1
for f in *
do
$CMD $f $dir2/$f
done