#!/bin/bash
echo Enter a Directory Name:
read
if [ -d "$1" ];
then
find "$1" -type f -size 0 -delete
find "$1" *.tmp -type f -delete
find "$1" *.swp -type f -delete
tar -cvzf mytarfile.tgz "$1"
else
echo "This is not a directory"
fi
当我自己使用./program.sh Desktop放置目录时,脚本将运行。如果我的桌面上没有txt,.tmp和.swp文件,它将删除它们并生成tar文件。如何在(读取)行中输入目录,例如Documents或MyMusic。它可以让我输入内容,然后转到其他位置并显示“这不是目录。
答案 0 :(得分:2)
将所有$1
替换为$REPLY
。
看看read的语法:help read
答案 1 :(得分:1)
您可以使用变量来读取目录名称,例如:
filter,map,bool
或更好:
PackageManager pm = context.getPackageManager();
pm.clearPackagePreferredActivities("you_package_name");
,然后将所有echo "Enter a Directory Name:"
read Dir_Name
替换为read -p "Enter Directory Name:" Dir_Name
$1
是Unix中的特殊变量。
在这里阅读:special variables