DEV Community

abbazs
abbazs

Posted on • Edited on

1

Shell script recipes

How to execute a command in all the sub directories in linux?

Consider there is a need to execute a command in all the sub directories of a directory, how to do it using bash script?

# In this example `du -ksh` is executed to get the size of each sub directory 
##Get disk usage of all sub directories#########################
function duall(){
    for d in */; do
        if [ -d "$d" ]; then
            echo "$d"
            cd "$d"
            du -ksh # Replace this line with any command required
            cd ..
        fi
    done
}
Enter fullscreen mode Exit fullscreen mode

Add the function to the .bashrc file in the home directory and below the function add an alias for the function:

alias duall="duall" # Disk usage of all sub directories
Enter fullscreen mode Exit fullscreen mode

Now the function duall available as a command.


How to remove all the files of a given type recursively?

find . -name "*.bak" -type f -delete
Enter fullscreen mode Exit fullscreen mode

Warning: If the -delete is issued before -name option, find will delete all the file.


How to tar all the folders and file except few?

tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
Enter fullscreen mode Exit fullscreen mode

Reference


How to retain the folder structure while archiving using 7z?

It helps to create a archive file with full path later to exactly recreate the same folder structure while extracting the zip file.

7z a -spf some.zip ./folder/subfolder/*
Enter fullscreen mode Exit fullscreen mode

While extracting the some.zip file all the folder structure will be retained.

7z x some.zip
Enter fullscreen mode Exit fullscreen mode

Image of Datadog

The Future of AI, LLMs, and Observability on Google Cloud

Datadog sat down with Google’s Director of AI to discuss the current and future states of AI, ML, and LLMs on Google Cloud. Discover 7 key insights for technical leaders, covering everything from upskilling teams to observability best practices

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay