-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathclean_and_get.sh
48 lines (37 loc) · 1.34 KB
/
clean_and_get.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/bash
# Save the current directory
original_dir=$(pwd)
lock_file="pubspec.lock"
# Search for subfolders inside "packages" and run "flutter clean" in each
for package_dir in */; do
if [ -d "$package_dir" ]; then
echo "Entering $package_dir and executing 'flutter clean'"
# Enter each subfolder (except 'build') and run "flutter clean"
cd "$package_dir" || exit
if [ "$package_dir" != "build/" ]; then
flutter clean > /dev/null 2>&1
fi
if [ -e "$lock_file" ]; then
rm "$lock_file"
echo "Deleted $lock_file"
else
echo "$lock_file does not exist"
fi
# Return to the "packages" directory
cd "$original_dir" || exit
fi
done
# Return to the original directory
cd "$original_dir" || exit
# Run "flutter pub get" in each subfolder of "packages" (except 'build')
for package_dir in */; do
if [ -d "$package_dir" ] && [ "$package_dir" != "build/" ]; then
echo "Entering $package_dir and executing 'flutter pub get'"
# Enter each subfolder (except 'build') and run "flutter clean"
cd "$package_dir" || exit
flutter pub get > /dev/null 2>&1
# Return to the "packages" directory
cd "$original_dir" || exit
fi
done
echo "Script completed successfully."