https://github.com/vinislima/42sp_piscine_shell00
The Shell00 project at École 42 serves as a foundational introduction to basic shell scripting operations, focusing on essential terminal commands and file manipulation for programming novices.
https://github.com/vinislima/42sp_piscine_shell00
42network 42saopaulo ecole42 shell shell-script
Last synced: 12 months ago
JSON representation
The Shell00 project at École 42 serves as a foundational introduction to basic shell scripting operations, focusing on essential terminal commands and file manipulation for programming novices.
- Host: GitHub
- URL: https://github.com/vinislima/42sp_piscine_shell00
- Owner: vinislima
- License: mit
- Created: 2024-11-09T01:55:31.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-17T04:02:44.000Z (over 1 year ago)
- Last Synced: 2025-03-14T15:49:23.590Z (over 1 year ago)
- Topics: 42network, 42saopaulo, ecole42, shell, shell-script
- Language: Shell
- Homepage: https://www.linkedin.com/in/viniciusslima/
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [**Shell 00**](https://github.com/vinislima/42sp_piscine_shell00)
> The "Shell 00" project, part of the 42 school C programming curriculum, introduces students to Unix shell scripting. The exercises progressively cover fundamental concepts, such as file permissions, basic shell commands, and scripting practices. Tasks include creating specific file outputs, working with Git commands, manipulating file systems, and writing scripts to automate operations like cleaning temporary files or identifying ignored files in a repository. The project emphasises meticulous attention to detail and peer-based evaluations, ensuring collaborative learning and mastery of shell programming basics.
>
The main shell commands covered in the **Shell 01** project are:
- **`id`** - Identifies the groups of a specified user and lists them in an organised format.
- **`find`** - Locates files based on specific criteria, such as extensions, and displays their names formatted.
- **`ls`** - Lists files and directories, often used to filter lines or create customised outputs.
- **`ifconfig` or `ip`** - Retrieves the machine's MAC addresses.
- **`cat`** - Displays and manipulates text files, used for transforming, sorting, or filtering content.
- **Redirections and pipes** (`|`, `>`): Allow combining commands, saving outputs, or modifying information, such as in sorting or calculations (various exercises).
Exercises:
- [ex00:](https://github.com/vinislima/42sp_piscine_shell00/tree/main/ex00)
```bash
z
```
- [ex04:](https://github.com/vinislima/42sp_piscine_shell00/tree/main/ex04)
```bash
ls -t -p -m
```
- [ex05:](https://github.com/vinislima/42sp_piscine_shell00/tree/main/ex05)
```bash
git log --format='%H' -n5
```