15 पॉइंट द्वारा winterjung 2025-04-19 | 6 टिप्पणियां | WhatsApp पर शेयर करें

मैं नीचे दिए गए shell script या snippets को ~/.zshrc में रखकर या alias बनाकर इस्तेमाल करता हूँ, और यह जानने के लिए पोस्ट कर रहा हूँ कि आप लोग कौन-से snippets इस्तेमाल करते हैं。

नीचे की सामग्री व्यक्तिगत ब्लॉग: अक्सर इस्तेमाल होने वाले shell snippets में भी लिखी है, लेकिन वहाँ अलग से जाने की ज़रूरत न पड़े इसलिए पूरा सामग्री यहाँ चिपका दी है。


1. man page को pdf में देखना

pman() {  
  mandoc -Tpdf "$(man -w $@)" | open -f -a Preview  
}  

macOS के आधार पर इसे $ pman curl की तरह इस्तेमाल किया जाता है।

2. git remote से हटाई गई branches को हटाना

git fetch -p && for branch in $(git branch -vv | grep ': gone]' | awk '{print $1}'); do git branch -D $branch; done  

या git gone - remote पर delete की गई branches को एक साथ हटाने वाला custom command का इस्तेमाल भी किया जा सकता है।

3. .env में मौजूद environment variables लागू करना

export $(grep -v '^#' .env | xargs)  

direnv का इस्तेमाल करना शायद बेहतर है, लेकिन आदत की वजह से मैं ऊपर वाले snippet का ज़्यादा इस्तेमाल करता हूँ।

4. जब लोकल में थोड़ी देर के लिए mysql चाहिए हो

docker run --rm -d --name mysql \  
  -e MYSQL_ROOT_PASSWORD=password \  
  -e MYSQL_ROOT_HOST=% \  
  -p 3306:3306 \  
  -v $(pwd)/mysql_data:/var/lib/mysql \  
  mysql:8 \  
  --character-set-server=utf8mb4 \  
  --explicit_defaults_for_timestamp=true  

इसके बाद localhost:3306 पर connect करके इस्तेमाल करता हूँ, और अगर volume को बनाए रखने की ज़रूरत न हो तो -v option हटाकर इस्तेमाल करता हूँ।

6 टिप्पणियां

 
roxie 2025-06-23
alias enable-sudo-with-touchid="cat /etc/pam.d/sudo && echo 'BEFORE===================\n===================AFTER' && sudo gsed -i '1i auth sufficient pam_tid.so' /etc/pam.d/sudo && cat /etc/pam.d/sudo"  

यह एक स्क्रिप्ट है जो MacBook पर उन स्थितियों में, जहाँ आपको admin password दर्ज करना पड़ता है (जैसे sudo), Touch ID से आगे बढ़ने देती है.

इसे केवल एक बार सेट करना होता है, लेकिन अगर आप सोचें कि फिर इसका alias क्यों है... तो कभी-कभी macOS version upgrade करने पर यह reset हो जाता है.

 
tequila 2025-04-21

mysql को थोड़ी देर के लिए चलाने को alias की तरह इस्तेमाल करने के बारे में मैंने कभी सोचा नहीं था, दिलचस्प है।
मैं अपनी .zshrc में ऐसी छोटी-मोटी settings डालकर इस्तेमाल करता हूँ।

cpcat() {  
  cat "$@" | pbcopy  
}  

cpcat [파일명] चलाने पर किसी खास फ़ाइल की सामग्री clipboard में कॉपी हो जाती है.

 
roxie 2025-06-23
alias cb="pbcopy"  

मैं तो ऐसा इस्तेमाल करता हूँ haha

 
winterjung 2025-04-21

ओह, हर बार pbcopy करना परेशान करता था, ये तो बढ़िया है! इसका नाम Copycat है, हाहा

 
ndrgrd 2025-04-19

3000 रेंज के पोर्ट्स में जो पोर्ट उपयोग में नहीं हैं, उन्हें दिखाता है।

function idleports()  
{  
    cols=10  
    count=0  
    output=""  
  
    listening_ports=($(sudo ss -tlpn | grep -o ':30[0-9]*' | sed 's/://g' | sort | uniq))  
  
    for port in {3000..3099}; do  
        if [[ " ${listening_ports[@]} " =~ " $port " ]]; then  
            output+="\033[38;5;235m$port\033[0m  "  
        else  
            output+="$port  "  
        fi  
  
        ((count++))  
        if ((count % cols == 0)); then  
            output+='\n'  
        fi  
    done  
  
    if ((count % cols != 0)); then  
        output+='\n'  
    fi  
  
    echo -e "$output"  
}  
 
kohs100 2025-04-21

अरे, यह तो कमाल की टिप है... धन्यवाद।