megacolorboy

Abdush Shakoor's Weblog

Writings, experiments & ideas.

Select all elements except the current element

If you don't want the current element to be selected in an array of elements that belongs to same class or type, just use the .not() method like the example below:

$(".btn").click(function(){
    $(".btn").not(this).text('selected');
});

The above code will change the text for all buttons except the current element.

Extract a specific folder from a zipped archive

First, you need to view what's inside of the .zip archive:

unzip -v archive.zip

Once, you've found the folder you wanted to extract, just type this:

unzip archive.zip "folder_to_extract/*" -d .

Remove patterns from multiple files

If you wanted to remove a specific pattern in a list of files, like the ones below:

23_2020_03_01_article-three.md
22_2020_02_01_article-two.md
21_2020_01_01_article-one.md

You can simply do that using Regular Expressions and the rename tool:

rename 's/[0-9]+_[0-9]+_[0-9]+_[0-9]+_//' *.md

Now, the desired output should look like this:

article-three.md
article-two.md
article-one.md

This should come in handy if you're lazy to rename each file manually! :)

Rename extensions of multiple files

In this example, we're going to change a list of .txt files to .md files:

#!/bin/bash

shopt -s nullglob
files=($(ls -v *.txt))

for file in "${files[@]}"
do
    mv ${file} ${file}.md
done

s You can use modify this script to rename any extension you want.

Create a symbolic storage link

When using Laravel, the public directory is used for files that are publicly accessible. By default, it's stored in local and often stored in this storage/app/public directory. You can make it easily accessible by using the following command:

php artisan storage:link

Once, it has been created, you can use access those files using the public_path or asset methods.

<?php
echo public_path('images/sample_1.jpg');
echo asset('images/sample_2.jpg');
?>

Including and excluding files in zip

When zipping a directory or a bunch of files, there'll be a lot of stuff that you want to include and exclude.

To exclude a file:

zip -r files.zip . -x file_1 file_2

Alternatively, you can choose to include files:

zip -r files.zip . -i file_1 file_2

Find a file by extension

This comes in handy whenever I want to look for files that exists with a specific extension in a computer or server:

find . -name "*.ext"

In addition, sometimes, you might want to look for a bunch of files with a specific extension but with matching keywords:

find .name "*.ext" | grep "keyword"

Hope you found this helpful!

Check branch status

Ever wondered if you've edited or committed anything in your project before pushing it to your repository, do this:

git status