-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathscripts.sh
More file actions
55 lines (46 loc) · 1.59 KB
/
scripts.sh
File metadata and controls
55 lines (46 loc) · 1.59 KB
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
49
50
51
52
53
54
55
#!/bin/bash
OUTPUT_FILE="output.txt"
COMPONENTS_DIR="src/components"
TESTS_DIR="src/__tests__"
README_FILE="README.md"
# Create or empty the output file
> "$OUTPUT_FILE"
# Generate directory structure without node_modules
echo "## Directory Structure (Excluding node_modules)" >> "$OUTPUT_FILE"
echo "----------------------------" >> "$OUTPUT_FILE"
tree -I 'node_modules' >> "$OUTPUT_FILE"
echo -e "\n" >> "$OUTPUT_FILE"
# Add header for components
echo "## Components" >> "$OUTPUT_FILE"
echo "----------------------------" >> "$OUTPUT_FILE"
# Add components' file paths and contents
for file in "$COMPONENTS_DIR"/*.tsx; do
if [ -f "$file" ]; then
echo "File: $file" >> "$OUTPUT_FILE"
echo "----------------------------" >> "$OUTPUT_FILE"
cat "$file" >> "$OUTPUT_FILE"
echo -e "\n" >> "$OUTPUT_FILE"
fi
done
# Add header for test files
echo "## Tests" >> "$OUTPUT_FILE"
echo "----------------------------" >> "$OUTPUT_FILE"
# Add test files' file paths and contents
find "$TESTS_DIR" -name "*.test.ts*" | while read -r file; do
if [ -f "$file" ]; then
echo "File: $file" >> "$OUTPUT_FILE"
echo "----------------------------" >> "$OUTPUT_FILE"
cat "$file" >> "$OUTPUT_FILE"
echo -e "\n" >> "$OUTPUT_FILE"
fi
done
# Add README.md content
if [ -f "$README_FILE" ]; then
echo "## README.md" >> "$OUTPUT_FILE"
echo "----------------------------" >> "$OUTPUT_FILE"
cat "$README_FILE" >> "$OUTPUT_FILE"
echo -e "\n" >> "$OUTPUT_FILE"
else
echo "README.md not found!" >> "$OUTPUT_FILE"
fi
echo "All contents, including the directory structure, have been written to $OUTPUT_FILE."